SlideShare a Scribd company logo
Incisive®
Enterprise Manager
Getting Started
Product Version 10.2
September 2011
©2006-2011 Cadence Design Systems, Inc. All rights reserved worldwide.
Printed in the United States of America.
Cadence Design Systems, Inc. (Cadence), 2655 Seely Ave., San Jose, CA 95134, USA.
Incisive© Enterprise Manager contains technology licensed from, and copyrighted by: Free Software Foundation, Inc. and is © 1989, 1991, 1999,
2006, Free Software Foundation, Inc. All rights reserved. Regents of the University of Colorado and is © 1995-2004, Regents of the University
of Colorado. All rights reserved. RSA Security, Inc. All rights reserved. Ioi Kim Lam and is © 1993-1995. All rights reserved. Regents of the
University of California and is © 1990, 1994 Regents of the University of California. All rights reserved. AT&T Corp. and is © AT&T Corp. All
rights reserved. Thai Open Source Software Center Ltd and Clark Cooper, and is © 1998, 1999, 2000, Thai Open Source Software Center Ltd
and Clark Cooper. All rights reserved. Expat maintainers and is © 2001-2003. All rights reserved. Scriptics Corporation and is © Scriptics
Corporation. All rights reserved. Open Source Initiative and is © 2004, Open Source Initiative. All rights reserved. Expert Interface Technologies
and is © 1996 Expert Interface Technologies. All rights reserved. PostgreSQL Global Development Group and is © 1996-2007, PostgreSQL
Global Development Group. All rights reserved. PostgreSQL ODBC and is © 1996-2008, PostgreSQL ODBC. All rights reserved. IBM
Corporation and others and is © 2000, 2007, IBM Corporation and others. All rights reserved. MySQL AB and is © 1995-2002, 2000-2007,
MySQL AB. All rights reserved. Ke Jin and is © 1995, 1996, Ke Jin. All rights reserved. Patrick Powell and is © 1995, Patrick Powell. All rights
reserved. Eric Sharkey and is © 2005, Eric Sharkey. All rights reserved. Nick Gorham and is © 1999, Nick Gorham. All rights reserved. David
Rolsky and is © 2000-2003, David Rolsky. All rights reserved. Tim Bunce and is © 1994-2008, Tim Bunce. All rights reserved. Yingyao Zhou
& Guangzhou Zo and is © 1998-2008, Yingyao Zhou & Guangzhou Zo. All rights reserved. Microsoft Corporation and is © 2005, 2007, 2008,
Microsoft Corporation. All rights reserved. Sun Microsystems, Inc.and is © 1997, 2007, Sun Microsystems, Inc. All rights reserved. Lawrence
Rosen, and is © 2005, Lawrence Rosen. All rights reserved. Oracle and/or its affiliates, and is © 2000, 2010 Oracle and/or its affiliates. All rights
reserved.
Associated third-party license terms may be found at <install-dir>/doc/thirdpartyinfo/.
Open SystemC, Open SystemC Initiative, OSCI, SystemC, and SystemC Initiative are trademarks or registered trademarks of Open SystemC
Initiative, Inc. in the United States and other countries and are used with permission.
Trademarks: Trademarks and service marks of Cadence Design Systems, Inc. contained in this document are attributed to Cadence with the
appropriate symbol. For queries regarding Cadence’s trademarks, contact the corporate legal department at the address shown above or call
800.862.4522. All other trademarks are the property of their respective holders.
Restricted Permission: This publication is protected by copyright law and international treaties and contains trade secrets and proprietary
information owned by Cadence. Unauthorized reproduction or distribution of this publication, or any portion of it, may result in civil and criminal
penalties. Except as specified in this permission statement, this publication may not be copied, reproduced, modified, published, uploaded, posted,
transmitted, or distributed in any way, without prior written permission from Cadence. Unless otherwise agreed to by Cadence in writing, this
statement grants Cadence customers permission to print one (1) hard copy of this publication subject to the following conditions:
The publication may be used only in accordance with a written agreement between Cadence and its customer;
The publication may not be modified in any way;
Any authorized copy of the publication or portion thereof must include all original copyright, trademark, and other proprietary notices and this
permission statement;
The information contained in this document cannot be used in the development of like products or software, whether for internal or external use,
and shall not be used for the benefit of any other party, whether or not for consideration
Disclaimer: Information in this publication is subject to change without notice and does not represent a commitment on the part of Cadence.
Except as may be explicitly set forth in such agreement, Cadence does not make, and expressly disclaims, any representations or warranties as to
the completeness, accuracy or usefulness of the information contained in this document. Cadence does not warrant that use of such information
will not infringe any third party rights, nor does Cadence assume any liability for damages or costs of any kind that may result from use of such
information.
THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT
LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-
INFRINGEMENT. IN NO EVENT SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Restricted Rights: Use, duplication, or disclosure by the Government is subject to restrictions as set forth in FAR52.227-14 and DFAR252.227-
7013 et seq. or its successor.
Enterprise Manager Getting Started
Contents
1 Using Enterprise Manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1
1.1 Enterprise Manager Task Flow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.2 How Enterprise Manager Can Work For You . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.2.1 Regression Analysis without Runner Integration . . . . . . . . . . . . . . . . . . . . . . .
1.2.2 Regression Analysis and Management with Runner Integration . . . . . . . . . . .
1.3 Next Steps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2 Managing vManager Memory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2
2.1 Automatic Settings for Optimal Garbage Collection . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.1.1 Automating Garbage Collection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.1.2 Setting the Optimal Process Size for Automated GC . . . . . . . . . . . . . . . . . . .
2.1.3 On-the-Fly Garbage Collection in Automated GC . . . . . . . . . . . . . . . . . . . . .
2.1.4 Printing the Automated GC Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.1.5 Interaction with Other Memory Configuration Options . . . . . . . . . . . . . . . . .
2.2 Guidelines for Using vManager Memory Efficiently . . . . . . . . . . . . . . . . . . . . . . . . . . .
3 Regression Analysis without Runner Integration . . . . . . . . . . . . . .3
3.1 Setting Up the Run Execution Environment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.2 Triggering vsof Creation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.3 Controlling the Single Run vsof content . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.4 Collecting Single-Run vsofs into a Collected vsof . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.5 Using Local Disk Execution for Single Runs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.6 Re-invoking Runs Executed Outside of Enterprise Manager . . . . . . . . . . . . . . . . . . . . .
3.7 Read Runs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.7.1 Running Read Runs command through GUI . . . . . . . . . . . . . . . . . . . . . . . . . .
3.7.2 Running Read Runs command through BATCH . . . . . . . . . . . . . . . . . . . . . . 3
iv Enterprise Manager Getting Star
3.7.2.1 collect_runs (command) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
3.7.2.2 collect_runs (backward compatibility changes) . . . . . . . . . . . . . . . 3
4 Creating a Baseline Environment . . . . . . . . . . . . . . . . . . . . . . . . . . .4
4.1 Setting Up the Project Environment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.2 Adapting a Run Script for Enterprise Manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.2.1 Setting Up the Run Environment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.2.2 Defining Run Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.2.3 Collecting Coverage and Check Data in Unicov Format . . . . . . . . . . . . . . . . .
4.2.4 Defining Run Modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.2.5 Building a Simulation Snapshot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
4.2.6 Invoking a Run . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
4.2.7 Sample Single Run Script for Incisive Simulator . . . . . . . . . . . . . . . . . . . . . 4
4.2.8 Sample Single Run Script for IFV . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
4.3 Using the Scan Script and the Predefined Filter Files . . . . . . . . . . . . . . . . . . . . . . . . . 4
5 Launching a Session . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5
5.1 Creating a Baseline vsif . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.2 Launching a Session Interactively . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.3 Launching a Session in Batch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.4 Tracking Running Sessions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.4.1 Refreshing Session Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
5.5 Reseeding and dynamic load testing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
5.6 Stopping a Session or a Run . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
6 Analyzing Failures and Launching Reruns . . . . . . . . . . . . . . . . . . .6
6.1 Reading Session Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6.2 Clearing Session Data from Memory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6.3 Analyzing Session Failures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6.4 Analyzing Run Failures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6.4.1 Predefined Failures Views . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6.4.1.1 First Failures View . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6.4.1.2 All Failures View . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
6.5 Enhancements in the Runs Table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
6.5.1 Formal Properties View . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
6.5.2 Contribution Runs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
6.6 Viewing Run Details . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
Enterprise Manager Getting Started
6.7 Grouping Runs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-1
6.7.1 Grouping by One or More Attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
6.7.2 Ungrouping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
6.7.3 Grouping Failure Attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
6.7.4 Grouping Time-Based Attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
6.8 Filtering Runs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
6.8.1 Filtering Selected Runs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
6.8.2 Filtering by One or More Attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
6.8.3 Filtering by Match Expression . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
6.8.4 Unfiltering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
6.9 Analyzing Check (Assertion) Failures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
6.9.1 Identifying Checks Using a Desktop License . . . . . . . . . . . . . . . . . . . . . . . . 6
6.9.2 Analyzing Checks Using an Enterprise Manager License . . . . . . . . . . . . . . . 6
6.10 Finding the Shortest Simulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
6.11 Rerunning a Session . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
7 Checks and Coverage and Contribution Metrics . . . . . . . . . . . . . .7
7.1 Simulation Oriented Contribution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7.1.1 Check Metric . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7.1.2 Coverage Metric . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7.2 Formal Contribution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7.2.1 Formal Check Metric . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7.2.2 Formal Coverage Metric . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7.2.2.1 Unreachable Marker . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7.3 Analyzing Metrics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7.4 Opening the vPlan Window from Specman, Incisive Simulator, or a Shell . . . . . . . . . .
7.4.1 Setting Up the Run Execution Environment . . . . . . . . . . . . . . . . . . . . . . . . . .
7.4.2 Opening the vPlan Window from Incisive Simulator . . . . . . . . . . . . . . . . . . .
7.4.3 Opening the vPlan Window from Specman . . . . . . . . . . . . . . . . . . . . . . . . . . .
7.4.4 Opening the vPlan Window from a Shell . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7.5 Opening the vPlan Window from Enterprise Manager or from a Shell . . . . . . . . . . . . .
7.6 Understanding the Default vPlan View . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
7.7 Viewing Details for a Verification Plan Element . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
7.7.1 Verification Plan Tree Icons . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
7.7.2 Grading Precision . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
7.7.3 Viewing Details for a Section or Coverage Container . . . . . . . . . . . . . . . . . . 7
7.7.4 Viewing Details for a Testcase Item . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
vi Enterprise Manager Getting Star
7.7.5 Viewing Details for a Check . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
7.7.6 Viewing Details for a Functional Coverage Item . . . . . . . . . . . . . . . . . . . . . . 7
7.7.6.1 SystemVerilog Cross Bins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
7.7.6.2 e String Items . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
7.7.7 Viewing Details for a Code Coverage Item . . . . . . . . . . . . . . . . . . . . . . . . . . 7
7.8 Reading in the Verification Plan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
7.9 Enhancements in vPlan for Checks and Coverage Contribution solution . . . . . . . . . . 7
7.9.1 Verification_metrics (Default Perspective) . . . . . . . . . . . . . . . . . . . . . . . . . . 7
7.10 Details Pane Enhancements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
7.10.1 Check Details Pane . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
7.10.2 Cover Details Pane . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
7.11 Configuring the vPlan Window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
Enterprise Manager Getting Started 1-1
© 2011 Cadence Design Systems, Inc. All rights reserved worldwide.
1 Using Enterprise Manager
Here are just a few of the ways that Enterprise Manager can facilitate the basic, every-day tasks of
verification process:
● Launch thousands of runs in a single session using a distributed resource manager
● Facilitate failure analysis by automatically extracting, filtering, and grouping key information from
all log files in one or more sessions
● Launch the rerun of failed tests in debug mode and manage failure scenarios
Note For IFV, you store CEXs and view them from Enterprise Manager without rerunning.
● Facilitate coverage and assertion analysis by presenting data gathered by multiple agents (Incisive
Simulator, Incisive Formal Verifier, and Specman) in the same window
For all these tasks, you need only a desktop_manager license key. With an enterprise_manager license
key, you have access to additional features:
● Creating HTML reports
● Test ranking
● Low power verification
● Verification planning with Enterprise Planner
● Advanced coverage analysis and vplan refinement tools
● Creating progress charts and reports
1.1 Enterprise Manager Task Flow
This book helps you learn how to perform the basic tasks shown in Figure 1-1. For all these tasks, you
need only a desktop_manager license key.
1-2 Enterprise Manager Getting Started
Using Enterprise Manager
How Enterprise Manager Can Work For You
© 2011 Cadence Design Systems, Inc. All rights reserved worldwide.
Figure 1-1 Enterprise Manager User Task Flow
A Note About Planning the Project
Depending on the size and complexity of the project, the verification plan can be as simple as a list of
scenarios that you plan to test or as complicated as an executable verification plan that references
multiple sub-plans and testbenches.
You can create an executable plan using Enterprise Planner (if you have an Enterprise Manager license)
or your favorite editor. Executable plans let you map specific metrics to each feature that you intend to
verify, thus enabling you to track project progress towards closure.
This manual does not cover project planning. For more information on this important task, see Getting
Started with Enterprise Planner or Enterprise Manager Verification Planning.
1.2 How Enterprise Manager Can Work For You
Enterprise Manager can work for you in the following ways:
● Regression analysis — you can use Enterprise Manager to facilitate failure analysis and coverage
analysis of regression results.
Assess Status
Run Regressions
Analyze Failures Analyze Metrics
Closure?
yes
no
Plan the Project Set Up the Verification Environment
Enterprise Manager Getting Started 1-3
Using Enterprise Manager
Regression Analysis without Runner Integration
© 2011 Cadence Design Systems, Inc. All rights reserved worldwide.
● Regression analysis and management — in addition to regression analysis, you can use Enterprise
Manager’s internal runner to launch regressions and manage regression data.
If you have a working test harness and Distributed Resource Manager (DRM) integration, you might
choose to start working first with Enterprise Manager’s regression analysis capabilities. Without
changing the way you run regressions, you can simply provide Enterprise Manager with the name of the
top-level directory containing regression results. Enterprise Manager collects the run results and
displays them as a single session, thus facilitating the analysis of run failures and cumulative coverage
results.
If you do not have a sophisticated test harness, you can integrate Enterprise Manager’s internal runner
and DRM into your run environment following the step-by-step procedures described in this manual and
in Enterprise Manager Managing Regressions. After you have set up a baseline regression environment
and can launch regular regressions, you can continue to customize and automate the environment to
manage project resources effectively and facilitate regression analysis and reporting of results.
The following sections describe in more detail what you need to do to enable Enterprise Manager to
work for you:
● “Regression Analysis without Runner Integration” on page 1-3
● “Regression Analysis and Management with Runner Integration” on page 1-5
1.2.1 Regression Analysis without Runner Integration
Note Regression analysis without runner integration is supported for Incisive Simulator and for
Specman, and requires either a Desktop Manager or an Enterprise Manager license. This feature is not
currently supported for Incisive Formal Verifier.
To perform regression analysis without runner integration:
1. Add the Enterprise Manager environment to the run execution environment.
2. Execute one or more runs while triggering Incisive Simulator and/or Specman to dump information
from each run into a “single-run vsof”.
Note A vsof (a verification session output file) as created by Enterprise Manager’s internal
runner contains information about a set of runs that are launched serially or in parallel using a
Distributed Resource Manager (DRM). When the internal runner is not used, a single-run vsof
contains only the results of a single run, including:
● General information about the run, such as the location of the log file, the start time and the end
time.
● Coverage information, including the location of the coverage data file (UCD) and the coverage
model file (UCM).
1-4 Enterprise Manager Getting Started
Using Enterprise Manager
Regression Analysis without Runner Integration
© 2011 Cadence Design Systems, Inc. All rights reserved worldwide.
● Additional properties (attributes) of the run such as the random seed value and the simulation
time.
3. Invoke Enterprise Manager to collect the single-run vsofs into a “collected vsof”.
Collection allows you to:
● Perform analysisofmultiplerunsas if they hadbeen executed asa single sessionusing Enterprise
Manager’s internal runner.
● Assign run attribute values, such as verification scope or a user-defined scan script, to a set of
runs.
4. Perform failure analysis.
Once a collected vsof has been created, regardless of whether all the runs have completed, you can
load it into Desktop Manager or Enterprise Manager and start to analyze failures. Using the vsof
attributes to filter and group the run results, you can quickly determine the root cause of similar
failures across multiple runs.
For example, one of Enterprise Manager’s predefined views of run results is First Failures, which
selects only the failed runs in a session and groups them according to the “description” attribute of
the first failure with severity “critical” in the vsof. This allows you to easily see whether several
runs failed because of the same error. Figure 1-2 below shows a First Failure view where three runs
failed because of a mismatch between the write burst that was expected and the write burst that was
actually collected.
Figure 1-2 Sample First Failures View of Run Results
5. Perform coverage analysis.
To analyze coverage results using Enterprise Manager, you can load one or more collected vsofs,
select all the runs of interest and open Enterprise Manager’s Verification Plan (vPlan) Tree window.
Figure 1-3 shows a sample vPlan window displaying the results from scenarios (testcases), checkers
(assertions), functional coverage and code coverage.
Enterprise Manager Getting Started 1-5
Using Enterprise Manager
Regression Analysis and Management with Runner Integration
© 2011 Cadence Design Systems, Inc. All rights reserved worldwide.
Note Analysis of sessions created outside of Enterprise Manager together with those created by
Enterprise Manager’s internal runner is supported.
Figure 1-3 Sample Verification Plan Tree Window
1.2.2 Regression Analysis and Management with Runner
Integration
Note Regression analysis and management with runner integration is supported for Incisive
Simulator, for Specman, and for Incisive Formal Verifier. It requires either a Desktop Manager or an
Enterprise Manager license.
In order to integrate Enterprise Manager’s runner into your environment, it is helpful to understand how
Enterprise Manager uses attributes — both predefined attributes and user-defined attributes — to launch
regressions and facilitate regression analysis. The following section attempts to give you the necessary
conceptual background for runner integration by explaining how attributes enable:
1-6 Enterprise Manager Getting Started
Using Enterprise Manager
Regression Analysis and Management with Runner Integration
© 2011 Cadence Design Systems, Inc. All rights reserved worldwide.
● Defining the regression session you want to launch.
● Passing information to the simulator (or other agent) for each run in the session.
● Extracting information about each run from its run log.
● Filtering and grouping runs in the session to facilitate regression analysis.
To perform regression analysis and management with runner integration:
1. You define the tests that you want to run in a Verification Session Input File (vsif file).
For each test, and the session itself, you define various attributes. For example, the following vsif
defines one attribute for the session and four attributes for a single test.
session short_tests {
top_dir : $ENV(REGRESSION_AREA);
};
test simple_test {
run_script: $ENV(SCRIPTS)/run_xsoc.sh;
run_mode: batch;
sv_seed: 98765;
};
Notes
● The run_script attribute specifies a script capable of launching a single run in your environment.
You or someone familiar with your environment must create this script.
● In case a non Cadence tool is used, such as a simulator from another vendor, the scan_script
attribute is required in order to extract interesting data from the run logs. You can use the scan
script provided with Enterprise Manager in the following way:
scan_script: vm_scan.pl vcs.flt; // Or modelsim.flt in case of Modelsim.
2. When you launch the session, the Enterprise Manager session runner calls the run script to execute
each test defined in the vsif.
The runner does not pass vsif attributes directly to the agent (a simulator, for example) that executes
the test. Instead, the runner exports certain attributes as environment variables, and the run script
picks up these variables.
For example, the run_mode attribute defined in the vsif above is exported as
BRUN_RUN_MODE. The following lines from a run script pick up the value “batch” specified by
the sample vsif above and set the invocation options of Incisive Simulator accordingly:
if [ -n $BRUN_RUN_MODE ]; then
case `echo $BRUN_RUN_MODE` in
...
batch_debug) # run batch
post_run_options ="-exit"
;;
Enterprise Manager Getting Started 1-7
Using Enterprise Manager
Regression Analysis and Management with Runner Integration
© 2011 Cadence Design Systems, Inc. All rights reserved worldwide.
...
irun ... $post_run_options ...
3. When each run completes, the runner calls the scan script to extract attributes and failure information
from the log file and append it to a Verification Session Output File (vsof).
As with the vsif file, for each test and for the session itself, various attributes are defined in the vsof,
some copied from the vsif and others extracted from the log file. For example:
session_output ifv_session.me.08_09_07_19_01_35_8411 {
session_dir: "/home/me/ifv_session.me.08_09_07_19_01_35_8411";
runs_in_session : 2;
session_start_time : 1220828496;
...
};
run 1 {
full_title: "ifv_session/ifv_tests/ifv_test1";
seed: "random";
...
};
run 2 {
full_title: "vm_ifv_session/irun_tests/irun_test1";
original_test_path: "___irun_tests___irun_test1";
seed: "random";
...
};
The scan script (vm_scan.pl) is invoked with filter files (.flt files). Enterprise Manager provides
filter files for each agent. The filter files contain Perl filters that extract information from the
messages output by each agent.
For example, given the following message from Incisive Simulator in the log file:
SVSEED set randomly from command line: 1056283255
The scan script, when invoked with the IUS filter file, adds the following attribute to the vsof:
sv_seed: 1056283255;
As another example, given the following message from Incisive Simulator in the log file:
ncbits: *F,NOSNAP (/absolute/path/to/file/filename.txt,1024): Snapshot
is missing
The scan script, when invoked with the IUS filter file, adds the following failure information to the
vsof:
failure F0 {
reference: <text>2@/home/my_login/work/fatal_log.log</text>;
tool: ncbits;
kind: NOSNAP;
1-8 Enterprise Manager Getting Started
Using Enterprise Manager
Regression Analysis and Management with Runner Integration
© 2011 Cadence Design Systems, Inc. All rights reserved worldwide.
severity: critical;
description: <text>Snapshot is missing</text>;
module: <text>line 1024 in
/absolute/path/to/file/filename.txt</text>;
};
4. When the session completes, you open the vsof file in Enterprise Manager and use the vsof attributes
to filter and group the session results.
For example, one of Enterprise Manager’s predefined views is First Failures, which selects only the
failed runs in a session and groups them according to the “description” attribute of the first failure
with severity “critical” in the vsof. This allows you to easily see whether several runs failed because
of the same error. For example, the figure below shows that 3 runs failed because of a mismatch
between the expected write burst and the write burst that was actually collected.
The vsof file also contains attributes that define the location of the coverage files, so these files are
automatically loaded.
5. Once you have analyzed the failures, you can launch a rerun from Enterprise Manager.
You can rerun the entire session or selected either using the same run mode (batch, interactive,
batch_debug, or interactive_debug) or a different mode. You can also change other attributes of the
run when you re-execute it.
6. Perform coverage analysis.
To analyze coverage results using Enterprise Manager, you can load one or more collected vsofs,
select all the runs of interest and open Enterprise Manager’s Verification Plan (vPlan) Tree window.
Figure 1-3 shows a sample vPlan window displaying the results from scenarios (testcases), checkers
(assertions), functional coverage and code coverage.
Note Analysis of sessions created outside of Enterprise Manager together with those created by
Enterprise Manager’s internal runner is supported.
Enterprise Manager Getting Started 1-9
Using Enterprise Manager
Next Steps
© 2011 Cadence Design Systems, Inc. All rights reserved worldwide.
Figure 1-4 Sample Verification Plan Tree Window
1.3 Next Steps
The rest of this manual takes you step-by-step through the process of setting up your environment to run
with Enterprise Manager, launching the first session, and analyzing results.
If you plan to use your own test harness and use Enterprise Manager for regression analysis only read
the following chapters:
● Chapter 3 “Regression Analysis without Runner Integration”
● Chapter 6 “Analyzing Failures and Launching Reruns”
● Chapter 7 “Checks and Coverage and Contribution Metrics”
Note If someone has already integrated Enterprise Manager’s runner into your environment, read the
following chapters:
● Chapter 5 “Launching a Session”
1-10 Enterprise Manager Getting Started
Using Enterprise Manager
Next Steps
© 2011 Cadence Design Systems, Inc. All rights reserved worldwide.
● Chapter 6 “Analyzing Failures and Launching Reruns”
● Chapter 7 “Checks and Coverage and Contribution Metrics”
If you need to integrate Enterprise Manager’s runner into your environment, read the following
chapters:
● Chapter 4 “Creating a Baseline Environment”
● Chapter 5 “Launching a Session”
● Chapter 6 “Analyzing Failures and Launching Reruns”
● Chapter 7 “Checks and Coverage and Contribution Metrics”
For More Information
This manual does not cover project planning. For more information on this important task, see Getting
Started with Enterprise Planner or Enterprise Manager Verification Planning.
This manual does not cover every aspect of some basic tasks. It also does not cover the less common
tasks, such as automating or customizing the regression environment. For information, see the following
manuals:
● Enterprise Manager Analyzing Failures
● Enterprise Manager Analyzing Metrics
● Enterprise Manager Managing Regressions.
This manual does not cover the tasks that require an Enterprise Manager license. For information on
these tasks, see “Features Requiring an enterprise_manager License” on page 3-1 in Enterprise
Manager Analyzing Metrics.
Enterprise Manager Getting Started 2-1
© 2011 Cadence Design Systems, Inc. All rights reserved worldwide.
2 Managing vManager Memory
The vManager Memory Manager periodically frees up space in memory by automatically recycling
unusable data. Any object (struct, list, string, or long integer) that is not used by the vManager scheduler
is considered unusable and defined by vManager as garbage. The recycling process is called Garbage
Collection (GC).
By default, garbage collection is automated to optimize runtime performance and memory usage for the
machines on which vManager is running. This automation is controlled by a set of config memory
options that are described in "“Guidelines for Using vManager Memory Efficiently” on page 2-4.
Note Garbage collection returns freed memory to vManager, not to the operating system, so from the
system perspective, the memory is still part of the vManager process.
This chapter contains the following sections:
● “Automatic Settings for Optimal Garbage Collection” on page 2-1
● “Guidelines for Using vManager Memory Efficiently” on page 2-4
2.1 Automatic Settings for Optimal Garbage
Collection
By default, garbage collection is automated to optimize runtime performance and memory usage for the
machines on which vManager is running. This automation is controlled by the set of config memory
options described in this section:
● “Automating Garbage Collection” on page 2-2
● “Setting the Optimal Process Size for Automated GC” on page 2-2
● “On-the-Fly Garbage Collection in Automated GC” on page 2-2
● “Printing the Automated GC Settings” on page 2-3
● “Interaction with Other Memory Configuration Options” on page 2-3
2-2 Enterprise Manager Getting Started
Managing vManager Memory
Automating Garbage Collection
© 2011 Cadence Design Systems, Inc. All rights reserved worldwide.
2.1.1 Automating Garbage Collection
By default, GC is automated.
To disable automated GC:
● Set the -automatic_gc_settings configuration option to NONE:
config mem -automatic_gc_settings=NONE
To re-enable automated GC:
● Set the -automatic_gc_settings configuration option to STANDARD:
config mem -automatic_gc_settings=STANDARD
During automated GC, vManager approximates the maximum memory footprint (the optimal process
size) to be used in the current run. This approximation is relative to the physical memory installed on the
local machine. If vManager fails to retrieve the machine memory, the optimal process size defaults to
2GB.
vManager continues to adjust the memory settings throughout the session, reassigning new values as the
memory footprint and memory consumption change.
2.1.2 Setting the Optimal Process Size for Automated GC
If you know the optimal process size for your machine, you can set it for vManager with the
-optimal_process_size option. When you set this option, vManager automatically sets
automatic_gc_settings to STANDARD (unless it is set already).
To set the optimal process size:
● Set the optimal process size in bytes with the -optimal_process_size configuration option:
config mem -optimal_process_size=2048M
Notes
● On 32-bit machines, the optimal process size cannot exceed 3GB. If you enter a number larger than
3GB, vManager truncates it to 3GB.
● On AIX machines, vManager always sets the optimal process size to 2GB, regardless of the setting
for -optimal_process_size.
2.1.3 On-the-Fly Garbage Collection in Automated GC
The config memory -max_size flag triggers on-the-fly garbage collection when automation is turned off.
However, when automated GC is turned on, vManager ignores the -max_size flag. Instead, vManager
triggers on-the-fly GC for efficiency in the following situations:
Enterprise Manager Getting Started 2-3
Managing vManager Memory
Printing the Automated GC Settings
© 2011 Cadence Design Systems, Inc. All rights reserved worldwide.
● If memory consumption is moderate relative to optimal_process_size, on-the-fly GC is called when
vManager allocates unusually large amounts of memory (when regular GC cannot be invoked).
Note In most cases, regular GC is used.
● If memory consumption is high and regular GC cannot be used efficiently, on-the-fly GC is called
when amount of memory used by vManager is close to optimal_process_size. If on-the-fly GC is
unable to free enough memory, disk-based GC is used.
2.1.4 Printing the Automated GC Settings
To print the settings for automated GC:
● Set the -notify_gc_settings configuration option to TRUE.
config mem -notify_gc_settings=TRUE
Note The -notify_gc_settings option applies only if automated GC is enabled.
2.1.5 Interaction with Other Memory Configuration Options
When GC is automated, vManager manages how memory is allocated for GC. If you subsequently
assign a value to any of the following config memory options, vManager automatically turns off
automated GC (that is, it sets -automatic_gc_settings to NONE):
Whenever you explicitly set anyone of the following memory parameters:
● -max_size
● -absolute_max_size
● -gc_threshold
● -gc_increment
You will get the following warning indicating that the Auto GC is disabled.
*** Warning: WARN_AUTO_GC_OFF: Once max_size is set explicitly, Specman cannot
calculate garbage collection settings automatically; setting
automatic_gc_settings to NONE
It is not recommended to mix Auto GC memory settings with any of these parameters.
Notes
● All other config memory options are valid during automatic GC configuration.
● It is highly recommended for the user to NOT change the auto gc setting.
2-4 Enterprise Manager Getting Started
Managing vManager Memory
Guidelines for Using vManager Memory Efficiently
© 2011 Cadence Design Systems, Inc. All rights reserved worldwide.
2.2 Guidelines for Using vManager Memory
Efficiently
To ensure that vManager uses memory efficiently, follow these steps:
1. If you are running without automated GC configuration (that is, if automatic_gc_settings=NONE),
control how frequently the memory manager performs garbage collection.
● To control the frequency of regular GC, use the -gc_threshold and -gc_increment memory
configuration options.
● To control the frequency of on-the-fly GC, use the -max_size memory configuration option.
2. Ensure that disk-based GC is enabled and that sufficient disk space is available.
Disk-based GC is enabled by default. You can disable it only by setting config memory
-disable_disk_based_gc=TRUE.
To ensure that sufficient disk space is available, set vManager_TEMP_DIR to an area with free
space equivalent to the amount of space used by your computer's virtual memory.
For more information on how to set these memory configuration values and what their ranges are, see
configure memory in the Specman Command Reference.
Enterprise Manager Getting Started 3-1
© 2011 Cadence Design Systems, Inc. All rights reserved worldwide.
3 Regression Analysis without
Runner Integration
This chapter describes how to perform failure and coverage analysis if the runs were invoked not with
Enterprise Manager’s internal runner but outside of Enterprise Manager.
Note Regression analysis without runner integration is supported for Incisive Enterprise Simulator
XL, with or without Specman, and requires either a Desktop Manager or an Enterprise Manager license.
This feature is not currently supported for IFV.
The following sections describe in detail how to enable this capability:
● “Setting Up the Run Execution Environment” on page 3-1
● “Triggering vsof Creation” on page 3-2
● “Controlling the Single Run vsof content” on page 3-4
● “Using Local Disk Execution for Single Runs” on page 3-7
● “Re-invoking Runs Executed Outside of Enterprise Manager” on page 3-8
For an overview of this capability, see “How Enterprise Manager Can Work For You” on page 1-2.
3.1 Setting Up the Run Execution Environment
To set up the run execution environment:
1. If necessary, install the EMGR release.
This step may already have been performed as part of an Incisive installation. If so, under the
Incisive install directory, you can see an EMGR install directory.
2. Add the Enterprise Manager environment to the run execution environment by adding
INCISIV-install-dir/EMGRnn/bin to your PATH.
3-2 Enterprise Manager Getting Started
Regression Analysis without Runner Integration
Triggering vsof Creation
© 2011 Cadence Design Systems, Inc. All rights reserved worldwide.
For example, for csh:
setenv PATH /cad/tools/INCISIV92/EMGR92/bin:${PATH}
Note No Enterprise Manager license is checked out during run execution, so licensing setup is
not required.
3.2 Triggering vsof Creation
By default, Incisive Simulator and Specman do not create vsof files. If you explicitly trigger vsof
creation, a separate file is created for each invocation of the tools.
To trigger vsof creation, do one of the following:
● Set the VMANAGER_WRITE_METRICS variable. This variable and the optional
VMANAGER_RUNS_DATA_DIR variable are described in Table 3-1.
● Use the -write_metrics invocation option shown in Table 3-2 for irun or ncsim. Specman accepts
set_config(write_metrics, TRUE).
While triggering the vsof creation, the following two operations are executed:
● Tool reports execution information which eventually will be written into the vsof
● Beforeexiting andwritingthevsof,logscanningusingvm_scan.plisinitiatedwiththerequiredfilters.
Notes
● If vsof creation is triggered with the VMANAGER_WRITE_METRICS variable or the
-write_metrics option, the coverage database format is quietly set to ucd and the coverage model
format to ucm, the formats required for viewing results in Enterprise Manager.
● If simulation fails to start or to complete normally due to initialization problems, compilation
problems or environment failures, no single-run vsof is created. These types of failures, including
license checkout failures, HDL compilation or elaboration failures, malfunctioning disk mounts, and
abnormal aborts, should be caught by the external runner or regression harness.
Table 3-1 Write vsof Environment Variables
Name Value Description
VMANAGER_WRITE_METRICS ALL Triggers the specified tool to collect
information and dump it into a
single-run vsof file.
Enterprise Manager Getting Started 3-3
Regression Analysis without Runner Integration
Triggering vsof Creation
© 2011 Cadence Design Systems, Inc. All rights reserved worldwide.
VMANAGER_RUNS_DATA_DIR The path to a
directory on a
globally visible disk
where all single-run
vsofs are written.
Setting this variable reduces the time
spent searching a directory hierarchy for
single-run vsofs.
If this directory is not writable, the tool
writes this information in the log file and
exits immediately with exit status 1.
By default the single-run vsof is created
in the execution directory with a unique
name constructed from tool identifiers.
For example, ncsim generates vsofs
named ncsim_unique_string.vsof. This
prevents multiple runs from
over-writing other vsofs.
Note If irun executes both Specman
and the simulator, it includes
information from both tools in the vsof.
If the simulator is not present, Specman
generates vsofs named
specman_unique_string.vsof.
See “Using Local Disk Execution for
Single Runs” on page 3-7 for a scenario
where defining this env var is not
recommended.
Table 3-2 Write vsof Options
Option Description
-write_metrics Writes run data including metrics and failures into a single-run vsof.
Note This option is supported for irun and ncsim. Specman accepts
set_config(write_metrics, TRUE).
Table 3-1 Write vsof Environment Variables
Name Value Description
3-4 Enterprise Manager Getting Started
Regression Analysis without Runner Integration
Controlling the Single Run vsof content
© 2011 Cadence Design Systems, Inc. All rights reserved worldwide.
3.3 Controlling the Single Run vsof content
The Single Run vsof contains all execution artifacts such as seed, log file location and references to
coverage information. In addition, it contains failures information which is automatically extracted from
the log via scanning process. Below is the list of environment variables that enable user control over the
content of the Single Run vsof file. Those variables have a corresponding vsif attributes with the same
functionality.
Name Value Description
Corresponding vsif
attribute
RUN_ATTR_VERIFIC
ATION_SCOPE
The
verification
scope of the
run
Associate the run to a
verification scope
verification_scope
RUN_ATTR_SCAN_SC
RIPT
User define
scanning
specifications
Add additional scanning on top
of the automatic scanning
defined by the tool in use
scan_script
RUN_ATTR_AUTO_SC
AN_ARGSV
m_scan.pl
arguments
Pass arguments to the automatic
scanning. One or more
vm_scan.pl arguments can be
provided. Those arguments will
be appended to the end of the
vm_scan.pl command
auto_scan_args
RUN_ATTR_FULL_TI
TLE
Full title,
possibly
containing "/"
Provide a user defined title for
the run. The provided title will
be reflected in the scenario
(test-case) coverage and also
appear as the run's full_title
value.
full_title
RUN_ATTR_LOG_FIL
E
Full pathname
of the
generated log
In some cases, especially when
using 3rd party tools, auto
detection of log file is limited.
Use this variable in order to
manually specifying the log
location. Log location is
extremely important in order to
enable log scanning.
log_file
Enterprise Manager Getting Started 3-5
Regression Analysis without Runner Integration
Controlling the Single Run vsof content
© 2011 Cadence Design Systems, Inc. All rights reserved worldwide.
Usage Examples:
● RUN_ATTR_VERIFICATION_SCOPE
● Associate the run with MASTER verification scope
setenv RUN_ATTR_VERIFICATION_SCOPE MASTER
● RUN_ATTR_SCAN_SCRIPT
● Scan log file using my.flt filter file
setenv RUN_ATTR_SCAN_SCRIPT "vm_scan.pl my.flt"
● RUN_ATTR_AUTO_SCAN_ARGS
● Extend the possible number of extracted patterns
setenv RUN_ATTR_AUTO_SCAN_ARGS "-maxpat 50"
● Specify the log file of a 3rd party tool
setenv RUN_ATTR_AUTO_SCAN_ARGS "-log results/vcs.log"
● Disable particular scan filters which are defined in the tool filter
(assuming disable.flt calls with the right arguments to remove_filter() )
setenv RUN_ATTR_AUTO_SCAN_ARGS "disable.flt"
● Disable automatic scanning and use the user scanning specification only (disabling the automatic
scanning should be avoided, unless facing a limitation)
setenv RUN_ATTR_SCAN_SCRIPT "vm_scan.pl ius.flt my.flt"
setenv RUN_ATTR_AUTO_SCAN_ARGS "-disable"
Note It is strongly recommended not to disable the automatic scanning in order to avoid false
positive. Instead consider to fine tune the automatic scanning using
RUN_ATTR_AUTO_SCAN_ARGS. For example, you can disable a specific filter by removing it from
the automatic filter files in the following way:
RUN_ATTR_AUTO_SCAN_ARGS=removeWarningns.flt
Where removeWarnings.flt will contain statements removing of warning messages:
remove_filter("ius_warning1")
remove_filter("ius_warning2")
● "RUN_ATTR_FULL_TITLE
RUN_ATTR_RUN_SCR
IPT
Rerun run
script
Specifying a run script to be
used when trying to rerun the
test via Enterprise Manager
run_script
Name Value Description
Corresponding vsif
attribute
3-6 Enterprise Manager Getting Started
Regression Analysis without Runner Integration
Collecting Single-Run vsofs into a Collected vsof
© 2011 Cadence Design Systems, Inc. All rights reserved worldwide.
● Provide the current working directory as the full title of the run
setenv RUN_ATTR_FULL_TITLE `pwd`
● Explicitly define the run full title to be /master/complete/long
setenv RUN_ATTR_FULL_TITLE /master/complete/long
● "RUN_ATTR_LOG_FILE
● Specify a 3rd party tool log file for scanning
setenv RUN_ATTR_LOG_FILE `pwd`/results/vcs.log
● "RUN_ATTR_RUN_SCRIPT
● Specify a runme.sh script with seed and interactive options
setenv RUN_ATTR_RUN_SCRIPT '/tools/scripts/runme.sh -seed $ATTR(seed) -interactive'
3.4 Collecting Single-Run vsofs into a Collected
vsof
Collection allows you to:
● Perform analysis of multiple runs as if they had been executed as a single session using Enterprise
Manager’s internal runner.
● Assign run attribute values, such as verification scope or a user-defined scan script, to a set of runs.
To collect single-run vsofs into a collected vsof in batch mode:
● Invoke Enterprise Manager with the collect_runs command.
emanager -b -c [-desktop] "collect_runs options"
Notes
● You can invoke Enterprise Manager to collect the results either while the runs are executing or
after they have completed.
● You can choose which tests to collect in the collected vsof. It is OK to collect single-run vsofs
created by different tools.
● When you do not use irun but invoke the HDL compiler and elaborator as separate steps in a
multi-step process, warnings and informational messages are not collected because they are in
different log files that are not scanned. As a result, these messages are not visible during
regression analysis.
Enterprise Manager Getting Started 3-7
Regression Analysis without Runner Integration
Using Local Disk Execution for Single Runs
© 2011 Cadence Design Systems, Inc. All rights reserved worldwide.
Example 1 Creating a Collected vsof and Loading into Enterprise Manager
The following command creates a collected vsof called nightly090605.vsof in the current working
directory and adds any single-run vsofs that it finds in the /proj/regs/nightly directory hierarchy. The
single-run vsofs are removed after they are added to the collected vsof.
% emanager -b -c [-desktop] "collect_runs -vsof nightly090605.vsof -dir
/proj/regs/nightly -remove"
Example 2 Appending to an Existing Collected vsof
The following command appends any single-run vsofs that it finds in the /proj/regs/nightly directory
hierarchy to nightly090605.vsof.
% emanager -b -c [-desktop] "collect_runs -vsof nightly090605.vsof -dir
/proj/regs/nightly -append -remove
The following command invokes Enterprise Manager interactively, loads the collected vsof and opens
the First Failures views:
% emanager [-desktop] -p "analyze_runs -vsof nightly090605.vsof -runs_view
First_Failures"
If the append process or the runs themselves have not completed when you initially load the collected
vsof, you can click the Refresh button in the Runs window, or you can wait for the auto-refresh function
to execute.
Note The user should not collect a 9.2 regression result with 10.2 as this may bring up unexpected
results.
See Also
● collect_runs on page A-11 in Enterprise Manager Managing Regressions
3.5 Using Local Disk Execution for Single Runs
You can use local disk execution in order to boost performance. Once the execution is completed, move
the cov_work directory along with log files and any other execution artifact to a global storage using any
UNIX command. At this point, the results can be analyzed and the run data can be collected.
See “Session Relocation” on page 2-30 in the Enterprise Manager Managing Regressions for more
information.
3-8 Enterprise Manager Getting Started
Regression Analysis without Runner Integration
Re-invoking Runs Executed Outside of Enterprise Manager
© 2011 Cadence Design Systems, Inc. All rights reserved worldwide.
3.6 Re-invoking Runs Executed Outside of
Enterprise Manager
It is possible to use Enterprise Manager’s internal runner (accessed by the Rerun button in the Runs
window) to re-invoke a run that was previously executed by an external runner. However, because no
DRM is integrated, you can only invoke a single run on the localhost; you cannot launch multiple runs
at the same time or run them on remote machines.
To re-execute a run for debugging, do one of the following:
● Set the run_script attribute with -attribute option of the collect_runs command. For example:
% emanager -c [-desktop] 'collect_runs -vsof a.vsof -dir
/proj/regs/nightly/UART -attribute "run_script=debug.sh -seed
$ATTR(seed) -dir $ATTR(run_dir)"'
Note The $ATTR() and $DIR() vsif directives can be used in this context since their
interpretation is performed as part of the rerun operation (and not during collect operation).
● Define a rerun scheme that computes the run_script attribute for each and every run.
3.7 Read Runs
The Read runs feature enables reading the ucd/ucm files directly into vManager if they are in the 10.2
run directory format. The user can then open a vPlan window and analyze his coverage data.
The Read runs feature can be run from the GUI, as well as through a batch command. This is explained
in the following sections:
3.7.1 Running Read Runs command through GUI
To open the read runs dialog:
1. In the Enterprise Manager main window, select File – Read runs.
Enterprise Manager Getting Started 3-9
Regression Analysis without Runner Integration
Running Read Runs command through GUI
© 2011 Cadence Design Systems, Inc. All rights reserved worldwide.
2. This will open the read runs dialog as shown below:
3-10 Enterprise Manager Getting Started
Regression Analysis without Runner Integration
Running Read Runs command through GUI
© 2011 Cadence Design Systems, Inc. All rights reserved worldwide.
3. Set the options in this dialog-box as explained below:
a. Search directory - This is a mandatory field that:
● Searches recursively from this folder for run directories with coverage and/or single run vsofs.
● Stops the search at a specific depth (default option set at 6)
If this field is unchecked, it indicates that the search will not stop unless it is complete.
If this field is checked, you need to specify the depth of the search.
b. Collect - This field collects all runs or selected runs as per the pattern specified by the user. The
options are:
● All runs - This is the default selection, and it collects all runs.
● Selectedruns:Thisoptioncollectsonlythoserunsthatmatchthespecifiedpattern.Forspecifying
the pattern:
Enterprise Manager Getting Started 3-11
Regression Analysis without Runner Integration
Running Read Runs command through GUI
© 2011 Cadence Design Systems, Inc. All rights reserved worldwide.
You can use wildcards or regular expressions. To find all run directories with my_run prefix use
one of the following:
/my_run/
*my_run*
my_run*
c. Target vsof file - This field gives you the option to either use the temporary vsof location, or to
specify where you want to create the vsof. The default selection is to use the temporary vsof
location, which will not be saved across invocations.
● Create vsof
If this field is unchecked, it indicates that a vsof will be created at the temporary location
If this field is checked, you need to specify the location where the vsof should be created.
● Overwrite existing file
If this field is unchecked and if a vsof already exists at that location, a yes/no dialog-box will
appear on your screen seeking your permission to overwrite the existing vsof file.
If this field is checked and if a vsof file already exists, it will be over-written without seeking
the user's permission.
d. Press Cancel to close the dialog without doing a search.
e. Press Ok to close the dialog and start the search.
The results of Read Run is a vsof that contains all the collected runs as shown in the image below:
3-12 Enterprise Manager Getting Started
Regression Analysis without Runner Integration
Running Read Runs command through BATCH
© 2011 Cadence Design Systems, Inc. All rights reserved worldwide.
3.7.2 Running Read Runs command through BATCH
This section contains:
● “collect_runs (command)” on page 3-12
● “collect_runs (backward compatibility changes)” on page 3-13
3.7.2.1 collect_runs (command)
When you start a search using the Read Runs feature from the GUI interface, the matching batch
command is printed to the console.
coll[ect]_r[uns] [-vsof vsof-pathname]
-dir dir1 [-dir dir2 …]
[-remove]
[-append | -overwrite]
[-attribute attribute-name:value][-attribute attribute-name:value …]
[-merge] [-log_only log-pattern] [-refine refine-pattern] [-depth depth-value]
Enterprise Manager Getting Started 3-13
Regression Analysis without Runner Integration
Running Read Runs command through BATCH
© 2011 Cadence Design Systems, Inc. All rights reserved worldwide.
The Read Runs batch command is an existing vManager 9.2 batch command called collect_runs that has
been extended to collect run directories (in vManager 9.2, collect_runs collected only single run vsof
files).
Run directories can include coverage data ucd/ucm files.To read run directories that have ucd/ucm files,
the ucd/ucm files must be in the 10.2 run directory format as per the following rules:
● ucd files must be in the following format
(engine_checksum1_checksum2.ucd)
● ucm files must be in the following format
(engine_checksum1_checksum2.ucm)
● Each ucd file must have a matching ucm file in the run directory or the parent directory (several ucd
files can share the same ucm file).
3.7.2.2 collect_runs (backward compatibility changes)
The following behavioral changes are a result of enhancing the collect_runs batch command to collect
run directories in 10.2 format (and not just single run vsof files). The use cases are based on the run
directory content.
Use case #1: Run directory with only ucd/ucm files (and no single run vsof file)
Result of applying collect_runs:
● A new run will be created, and all valid ucd/ucm files will be added to this run. Warnings will be
added to the run for ucd/ucm files that are not in the supported format.
● As a result of increasing the number of runs and adding coverage data to the new run, the coverage
results might change as compared to results when applying collect_runs in vManager 9.2 on the same
directory (as collect_runs in vManager 9.2 did not collect directories with only ucd/ucm files).
Use case #2: Run directory has both single run vsof files and ucd/ucm files
● If multiple single run vsof files are found in the same run directory alongside valid ucd/ucm files, a
single run vsof will be created that holds the merged result of all the single run vsof files.
● Applying collect_runs in vManager 9.2 on the same directory will result in one run created for each
single run vsof file. Hence 9.2 collect might result with more runs than 10.2 collect.
● Any valid ucd/ucm files in the run directory that do not appear in the single run vsof will be added
to the run.
● If collect did not succeed in reading any single run vsof file, but there are valid ucd/ucm files, the
run directory will be collected the same as in use case#1: "Run directory with only ucd/ucm files
(and no vsof file).
3-14 Enterprise Manager Getting Started
Regression Analysis without Runner Integration
Running Read Runs command through BATCH
© 2011 Cadence Design Systems, Inc. All rights reserved worldwide.
The following scenarios will give the same results as if applying collect_runs in vManager 9.2 (no
behavioral changes):
● If there are only ucd/ucm files in the directory and none are valid (not in the 10.2 supported format),
this directory will not be collected.
● If the run directory includes only single run vsof files (no valid ucd/ucm files), a run will be created
for each single run vsof file.
● If the run directory has one single run vsof file and all the ucd/ucm files in that directory already
appear in the vsof file, the single run vsof file will be collected without changes.
See Also
● collect_runs on page A-11 in Enterprise Manager Managing Regressions
Enterprise Manager Getting Started 4-1
© 2011 Cadence Design Systems, Inc. All rights reserved worldwide.
4 Creating a Baseline
Environment
This chapter explains what you need to do to get the first tests running with Enterprise Manager.Once
you can analyze the first results, you will have a better sense of how you want to customize and refine
the environment further.
The tasks required to set up a baseline environment include:
● “Setting Up the Project Environment” on page 4-1
● “Adapting a Run Script for Enterprise Manager” on page 4-2
● “Using the Scan Script and the Predefined Filter Files” on page 4-17
4.1 Setting Up the Project Environment
If your project environment depends on the use of relative paths, you must change those paths to use
environment variables.
For example, if you have a project directory similar to the one shown in Figure 4-1, it is likely that the
fifo.f files in the “ius” and “ifv” directories load the fifo.v file in the “rtl” directory using the relative
path “../rtl/fifo.v”. If this is the case, you need to define environment variables, such as:
IFV_DIR /proj/ifv
IUS_DIR /proj/ius
RTL_DIR /proj/rtl
Also, you must change the fifo.f files to load the fifo.v file with the environment variable. For example:
$RTL_DIR/fifo.v
4-2 Enterprise Manager Getting Started
Creating a Baseline Environment
Adapting a Run Script for Enterprise Manager
© 2011 Cadence Design Systems, Inc. All rights reserved worldwide.
Figure 4-1 Sample Project Directory
4.2 Adapting a Run Script for Enterprise Manager
A run script can be as simple as a single command invoking a verification agent, such as a simulator. For
example, the following vsif code invokes IES for a single run called “first_test” with a specified
snapshot, seed, and list of top files.
test first_test {
run_script: "irun -R -nclibdirpath $DIR(session) $BRUN_SV_SEED
$BRUN_TOP_FILES";
...
};
However, specifying an actual script rather than a single invocation command as in the following vsif
code provides you with much more flexibility:
group first_tests {
run_script: $ENV(MY_SCRIPTS)/ies_run.sh;
...
};
A run script modified to work with Enterprise Manager usually does the following:
● Sets up the run environment
● Defines run variables
● Collects coverage and check data in Unicov Format
● Defines run modes
● Builds a simulation snapshot (or perform other pre-run tasks)
● Invokes a run
This section takes you step-by-step through the process of modifying a run script to work with
Enterprise Manager.
rtl
ifv
ius
proj
fifo.f
fifo.f
fifo.v
Enterprise Manager Getting Started 4-3
Creating a Baseline Environment
Setting Up the Run Environment
© 2011 Cadence Design Systems, Inc. All rights reserved worldwide.
Notes
● Examples are shown in this section for Incisive Simulator, IFV and Specman. If your verification
environment uses more than one of these tools, you need to look at multiple examples.
● The examples in this section assume that you have a script that is capable of launching a single
verification run from the shell (without invoking Enterprise Manager). Thus, the examples are not
complete; they only show the kind of modifications you must make so that the script works with
Enterprise Manager.
See Also
● “Setting Up the Run Environment” on page 4-3
● “Defining Run Variables” on page 4-4
● “Collecting Coverage and Check Data in Unicov Format” on page 4-7
● “Defining Run Modes” on page 4-9
● “Building a Simulation Snapshot” on page 4-11
● “Invoking a Run” on page 4-12
● “Sample Single Run Script for Incisive Simulator” on page 4-13
● “Sample Single Run Script for IFV” on page 4-14
4.2.1 Setting Up the Run Environment
It is recommended to set environment variables and paths in a .sve file instead of in a run script. If you
specify the name of the sve file in the vsif using the sve_name group or test attribute, Enterprise
Manager sources this file before every run. This capability lets you set up different variables and paths
for different runs or groups of runs.
Note The run environment can be different from the Enterprise Manager environment, because each
run is a sub-process of the emanager process. The sve file affects only the run env.
For example, if you want to be able to define a single session where some runs are performed with
Incisive Simulator and others are performed with IFV, you can create an IES sve file and an IFV sve file.
You then specify the appropriate sve file for each test or each group of tests.
group ius_tests {
sve_name : $ENV(ABV_VM_UTIL)/vm/ius_setup.sve;
...
};
group ifv_tests {
sve_name : $ENV(ABV_VM_UTIL)/vm/ifv_setup.sve;
...
4-4 Enterprise Manager Getting Started
Creating a Baseline Environment
Defining Run Variables
© 2011 Cadence Design Systems, Inc. All rights reserved worldwide.
};
Notes
● Do not use relative paths when setting up the run environment.
● Only certain versions of IFV are compatible with IES. To determine which version of IES is
compatible with IFV perform the following
<ifv_install_dir>/bin/ncverilog -version
● You cannot set up both IES and IFV in the same sve file because whichever agent you are using must
be first in the $PATH variable.
Incisive Simulator: Sample sve File
#!/usr/bin/sh
IUS_HOME=/cad/INCISIV92/IUS92;export IUS_HOME
LD_LIBRARY_PATH=$IUS_HOME/tools/lib:$IUS_HOME/tools/inca/lib:$LD_LIBRARY_
PATH;export LD_LIBRARY_PATH
PATH=$IUS_HOME/tools/bin/:$PATH;export PATH
PATH=/cad/INCISIV92/EMGR92/bin:$PATH;export PATH
IFV: Sample sve File
#!/usr/bin/sh
IFV_HOME=/cad/INCISIV92/IFV92;export IFV_HOME
LD_LIBRARY_PATH=$IFV_HOME/tools/lib:$IFV_HOME/tools/inca/lib:$LD_LIBRARY_
PATH;export LD_LIBRARY_PATH
PATH=$IFV_HOME/tools/bin/:$PATH;export PATH
PATH=/cad/INCISIV92/EMGR92/bin:$PATH;export PATH
Specman: Sample sve File
#!/usr/bin/sh
PATH=/cad/INCISIV92/SPMN92/tools/bin:$PATH;export PATH
PATH=/cad/INCISIV92/EMGR92/bin:$PATH;export PATH
See Also
● “Creating an SVE File” on page 2-17 in Enterprise Manager Managing Regressions
● “Setting Up the Launch Environment” on page 2-2 in Enterprise Manager Managing Regressions
4.2.2 Defining Run Variables
To enable full control from the vsif over invocation options and input files, you can do one or both of the
following:
Enterprise Manager Getting Started 4-5
Creating a Baseline Environment
Defining Run Variables
© 2011 Cadence Design Systems, Inc. All rights reserved worldwide.
● Use Enterprise Manager’s predefined vsif group/test attributes
● Create user-defined vsif group/test attributes that are exported as environment variables and copied
to the vsof file.
Then you can pick up the variable setting at invocation. For example, if you specify the source files for
the DUT in the vsif using the predefined hdl_files attribute:
test my_test {
hdl_files: "-f $ENV(DUT_SRC)/top.f";
...
};
Then you can pick up the name of the DUT source files in the run script and pass it to irun as follows:
irun $BRUN_HDL_FILES ...
The examples in this manual assume that you have created user-defined attributes as follows:
● tcl_files — specifies a list of files to be passed to the simulator or IFV
● ifv_tcl — specifies any tcl commands, such as pin constraints, to be executed prior to the prove
command
● cmd_args — specifies a list of command line arguments to be passed to the simulator or IFV
● cmd_files — specifies the command files to be passed to the simulator or IFV
● e_files — specifies the e files to be passed to Specman
The examples in this manual also use the following predefined vsif attributes:
● code_coverage
● gui_mode
● hdl_files
● ifv_assertions
● ifv_effort
● ifv_engine
● ifv_halo
● run_mode
● sv_seed
● top_files
● verbosity
● waveform
For more information on these predefined attributes, see “vsif File Structure and Attributes” on page C-5
in Enterprise Manager Managing Regressions.
4-6 Enterprise Manager Getting Started
Creating a Baseline Environment
Defining Run Variables
© 2011 Cadence Design Systems, Inc. All rights reserved worldwide.
User-defined attribute definitions must be stored in an attributes definition file, vm_attributes.csv.
Enterprise Manager reads all vm_attributes.csv files in:
1. Any directory defined in $VMANAGER_PATH.
VMANAGER_PATH contains a colon-separated list of absolute pathnames. For example:
setenv VMANAGER_PATH /proj/attributes:/my-login/proj/attributes
2. $VMANAGER_CONFIG_HOME/.vmanager.
Note If VMANAGER_CONFIG_HOME is not defined, Enterprise Manager looks for this file
in the .vmanager directory under your HOME directory (~/.vmanager).
3. Any directory defined in $SPECMAN_PATH.
SPECMAN_PATH contains a colon-separated list of absolute pathnames.
If an attribute with the same name is defined twice (within the same file or in two files), the second
definition over-rides the first one.
To create these or other user-defined vsif group/test attributes:
1. Copy the INCISIV-install-dir/EMGRnn/vmanager/vm_lib/vm_attributes/vm_attributes.csv file to
the desired location.
2. Open vm_attributes.csv with a spreadsheet editor such as OpenOffice.org Calc.
3. In the first empty row, in the NAME column, enter a unique name for the attribute you want to create
or modify.
Only alphanumeric characters and the underscore character (_) are allowed in attribute names.
4. In the VALID_CONTAINER_NAMES column, enter the types of containers where the attribute is
valid.
The following list allows the attributes to appear in the test and group containers in the vsif and in
the run container of a vsof:
test;group;run;
Note The list must end with a semi-colon.
5. Scan across the column headings and find COPY_TO_VSOF and IS_ENV_ATTRIBUTE.
The COPY_TO_VSOF column controls whether the setting specified in the vsif is copied as is to
the vsof file (and thus can be displayed during the analysis of the session). The
IS_ENV_ATTRIBUTE column specifies whether the setting is exported as an environment variable
(and thus can be picked up by a script such as the run script.)
Enterprise Manager Getting Started 4-7
Creating a Baseline Environment
Collecting Coverage and Check Data in Unicov Format
© 2011 Cadence Design Systems, Inc. All rights reserved worldwide.
For a complete description of all the columns in the attributes file, see “Creating User-Defined
Attributes” on page 2-105 in Enterprise Manager Managing Regressions.
6. Save the file in CSV format.
See Also
● “Defining Sessions (Vsif Files)” on page 2-19 in Enterprise Manager Managing Regressions
4.2.3 Collecting Coverage and Check Data in Unicov Format
In order to view coverage and check data collected by various agents in Enterprise Manager, you must
collect the data in Unicov format during every run. There are two Unicov format files:
● A Unicov data file has a .ucd extension and can contain functional coverage, code coverage, and/or
check data.
● A Unicov coverage/check model file has a .ucm extension and contains a model of all the checks
and coverage points in the DUT that are monitored during the run.
In some cases, you must explicitly turn on coverage/check collection:
● You must explicitly turn on IES code coverage data collection.
● You must explicitly turn on IFV coverage and check data collection.
● You must explicitly turn on Specman check and expect data collection.
● You must explicitly turn on Specman code coverage data collection.
● You do not need to explicitly turn on IES or Specman functional coverage data collection.
For every run where coverage/check collection is enabled, each agent writes its own ucd file. The data
from these files is merged and projected onto the coverage model.
Using a checksum mechanism, IES, IFV and Specman each write a coverage model for a run unless a
model with the same checksum already exists.
If you prefer, you can manually control the coverage model writing or the location of where the coverage
model is written. For more information on this topic, see “Writing the Coverage Model” on page 2-47 in
Enterprise Manager Managing Regressions.
IES
To require the simulator to collect code coverage:
1. Define the vsif code_coverage attribute with the following options:
-coverage coverage-types or -covfile cover-config-file
4-8 Enterprise Manager Getting Started
Creating a Baseline Environment
Collecting Coverage and Check Data in Unicov Format
© 2011 Cadence Design Systems, Inc. All rights reserved worldwide.
-covdut DUT-module
The -coverage or -covfile options specify the coverage to be instrumented and scored. The -covdut
option specifies the scope of the instrumentation.
Note For more information on these options, see the Incisive Comprehensive Coverage user
documentation for Incisive Simulator.
2. Add the $BRUN_CODE_COVERAGE variable to the irun or ncelab invocation line.
IFV
To require IFV to collect coverage and check data:
● Add one of the following option to the ifv invocation line:
+coverage—enables coverage instrumentation
+waveform_coverage—enables coverage instrumentation for waveform generation
Note When you invoke IFV with +coverage, witness_check defaults to auto. If you have set
witness_check to off in the tcl file, then that setting is honored. However, if you have set it to trace or
trigger that setting is ignored and it defaults to auto.
Specman
To require Specman to collect check and expect data:
● Add the following option to the irun or specman invocation line:
-snset "set_config(cover, collect_checks_expects, TRUE)"
To require Specman to collect block code coverage data:
● Add one of the following options to the irun or specman invocation line:
-snset "set_config(cover, block_coverage_mode, on)"
-snset "set_config(cover, block_coverage_mode, per_type)"
Notes
● The collect_checks_expects option must be set before any e module is loaded or compiled.
● When Specman runs under Enterprise Manager, the default database format is ucd and the default
coverage model format is ucm, the Unicov formats that Enterprise Manager requires.
● Do not use the Specman on_interactive coverage collection mode. If you use this mode, Specman
forces the database format to be an ecov file. Enterprise Manager can read this file, but there is a
performance penalty. A warning notification is issued when this occurs.
● For more information on these options, see the Specman user documentation.
Enterprise Manager Getting Started 4-9
Creating a Baseline Environment
Defining Run Modes
© 2011 Cadence Design Systems, Inc. All rights reserved worldwide.
4.2.4 Defining Run Modes
The Enterprise Manager test runner exports the vsif run_mode attribute as an environment variable, and
you must enhance the run script to define invocation options for the four predefined values:
● batch
● interactive
● batch_debug
● interactive_debug
Note For reruns, there is an additional mode, as_is, which means “as specified in the original vsif”.
To allow users more control over invocation options for a particular run mode, you can pick up the
environment variable settings of the following vsif attributes:
● gui_mode (BRUN_GUI_MODE)
● verbosity (BRUN_VERBOSITY)
● waveform (BRUN_WAVEFORM)
Notes
● To see a complete list of vsif attributes that are exported as variables, refer to “Runner Environment
Variables” on page 2-125 in Enterprise Manager Managing Regressions.
● It is possible to define additional run modes (run schemes). For more information, see “Creating a
New Rerun Scheme” on page 2-112 in Enterprise Manager Managing Regressions.
IES Run Modes
The script picks up any parameters it needs from the vsif, and assigns them to variables that are then
passed to irun.
# Interpreting different Rerun Schemes
pre_run_option=""
post_run_option="-exit"
if [ $BRUN_RUN_MODE != "" ]; then
case `echo $BRUN_RUN_MODE` in
interactive) # run interactive
post_run_option=-gui $BRUN_GUI_MODE
;;
interactive_debug) # run interactive and write waveforms
pre_run_option= -linedebug $BRUN_VERBOSITY
post_run_option=-gui $BRUN_GUI_MODE $BRUN_WAVEFORM
;;
4-10 Enterprise Manager Getting Started
Creating a Baseline Environment
Defining Run Modes
© 2011 Cadence Design Systems, Inc. All rights reserved worldwide.
batch) # run batch
post_run_option="-exit"
;;
batch_debug) # run batch and write waveforms
pre_run_option= -linedebug $BRUN_VERBOSITY
post_run_option= $BRUN_WAVEFORM "-exit"
;;
*) # not supported
echo "ERROR: BRUN_RUN_MODE '$BRUN_RUN_MODE' not supported by $0!"
exit 1
esac
fi
IFV Run Modes
run_option="+exit"
if [ "$BRUN_RUN_MODE" != "" ]; then
case `echo $BRUN_RUN_MODE` in
batch) # run batch
run_option="+coverage +exit"
;;
batch_debug) # run batch
run_option="+waveform_coverage +exit"
;;
interactive) # run with GUI
run_option="+coverage +gui"
;;
interactive_debug) # run with GUI
run_option="+waveform_coverage +gui"
;;
*) # not supported
echo "ERROR: BRUN_RUN_MODE '$BRUN_RUN_MODE' not supported by $0!"
exit 1
esac
fi
Specman Run Modes
case $BRUN_RUN_MODE in
"interactive" | "interactive_debug" )
run_options="-nosncomp -gui"
;;
"batch" | "batch_debug" )
/bin/echo "(Info) Running in batch, no GUI *and* SN-TB is compiled."
Enterprise Manager Getting Started 4-11
Creating a Baseline Environment
Building a Simulation Snapshot
© 2011 Cadence Design Systems, Inc. All rights reserved worldwide.
;;
*)
echo Run-mode: "${mode}" not supported, exiting
exit 1
esac
4.2.5 Building a Simulation Snapshot
For tests that share common source files, it is more efficient to compile those source files once (create a
snapshot), rather than compiling them in every run.
To build a snapshot, you can use a pre-session script. The invocation of any run is delayed until the
pre-session script completes. If the pre-session script fails, the runs are not executed.
Note If you want to write the snapshot to the session directory, you can retrieve its location with the
expression:
$DIR(session)
IES Snapshot Build
These lines compile and elaborate the HDL code specified by $BRUN_HDL_FILES and instrument it
with the coverage options described in $BRUN_CODE_COVERAGE.
pre_session_script: <text> irun -c
-nclibdirname $DIR(session) 
-f $BRUN_HDL_FILES 
$BRUN_CODE_COVERAGE
</text>;
IFV Snapshot Build
These lines compile and elaborate the HDL code specified by $BRUN_HDL_FILES with coverage only
(no debug).
pre_session_script: <text> ifv -c
+nclibdirname+$DIR(session) 
-f $BRUN_HDL_FILES 
+coverage
</text>;
Specman Snapshot Build
These lines compile and elaborate the HDL and e code specified by $BRUN_HDL_FILES and
$BRUN_E_FILES and instrument it with coverage options described in $BRUN_CODE_COVERAGE.
4-12 Enterprise Manager Getting Started
Creating a Baseline Environment
Invoking a Run
© 2011 Cadence Design Systems, Inc. All rights reserved worldwide.
pre_session_script: <text> irun -c 
-nclibdirpath $DIR(session) 
$BRUN_HDL_FILES 
$BRUN_E_FILES 
$BRUN_CODE_COVERAGE 
</text>;
4.2.6 Invoking a Run
When invoking the run, you need to pass run variables and the options specified by the run mode.
IES Execute Run
This example invokes the simulator, using the snapshot created by the pre-session script and passing the
SystemVerilog seed, the name of the SystemVerilog test file, and the run mode options.
irun 
-R -nclibdirpath $DIR(session) 
$pre_run_option 
$BRUN_SV_SEED 
$BRUN_TOP_FILES 
$post_run_option
IFV Execute Run
This example invokes IFV, using the snapshot created by the pre-session script and passing the name of
the test file and the run mode options.
ifv 
-R +nclibdirpath+$DIR(session) 
$pre_run_option 
$BRUN_TOP_FILES 
+coverage
$post_run_option
Specman Execute Run
This example invokes the simulator with Specman, using the snapshot created by the pre-session script
and passing the SV and Specman seeds, the name of the e test file, and the run mode options.
irun 
-R -nclibdirpath $DIR(session 
$pre_run_option 
$BRUN_SV_SEED 
$BRUN_SEED
Enterprise Manager Getting Started 4-13
Creating a Baseline Environment
Sample Single Run Script for Incisive Simulator
© 2011 Cadence Design Systems, Inc. All rights reserved worldwide.
$BRUN_TOP_FILES 
-snset "set_config(cover, collect_checks_expects, TRUE)" 
$post_run_option
4.2.7 Sample Single Run Script for Incisive Simulator
#!/bin/sh
echo RUNNING SCRIPT $0 ...
# specify your debug options or tcl files in the debug option below
debug_option="-linedebug"
debug_option="$debug_option -input "@database -open waves -default; probe
-create -all -depth all -memories -variables""
# Interpreting different ReRun Schemes
pre_run_option=""
post_run_option="-exit"
if [ $BRUN_RUN_MODE != "" ]; then
case `echo $BRUN_RUN_MODE` in
interactive) # run interactive
post_run_option="-gui"
;;
interactive_debug) # run interactive and dump waveforms
pre_run_option="$debug_option"
post_run_option="-gui"
;;
batch) # run batch
post_run_option="-exit"
;;
batch_debug) # run batch and dump waveforms
pre_run_option="$debug_option"
post_run_option="-exit"
;;
*) # not supported
echo "ERROR: BRUN_RUN_MODE '$BRUN_RUN_MODE' not supported by $0!"
exit 1
esac
fi
# Unroll top files and add -f option before each
f_option=""
4-14 Enterprise Manager Getting Started
Creating a Baseline Environment
Sample Single Run Script for IFV
© 2011 Cadence Design Systems, Inc. All rights reserved worldwide.
if [ "$BRUN_TOP_FILES" != "" ]; then
for top_file in ${BRUN_TOP_FILES}
do
if [ -f "$top_file" ]; then
f_option="$f_option -f $top_file"
else
echo "WARNING: top_file=$top_file does not exist, ignoring."
fi
done
fi
# Unroll cmd files and add -f option before each
if [ "$BRUN_CMD_FILES" != "" ]; then
for cmd_file in ${BRUN_CMD_FILES}
do
if [ -f "$cmd_file" ]; then
f_option="$f_option -f $cmd_file"
else
echo "WARNING: cmd_file=$cmd_file does not exist, ignoring."
fi
done
fi
# user tcl files
tcl_option=""
if [ "$BRUN_TCL_FILES" != "" ]; then
for tcl_file in ${BRUN_TCL_FILES}
do
if [ -f "$tcl_file" ]; then
tcl_option="$tcl_option -input $tcl_file"
else
echo "WARNING: tcl_file=$tcl_file does not exist, ignoring."
fi
done
fi
cmd="irun ${pre_run_option} ${f_option} ${tcl_option} ${BRUN_CMD_ARGS}
${post_run_option}"
echo "Running: $cmd"
eval $cmd
exit 0
4.2.8 Sample Single Run Script for IFV
#!/bin/sh
Enterprise Manager Getting Started 4-15
Creating a Baseline Environment
Sample Single Run Script for IFV
© 2011 Cadence Design Systems, Inc. All rights reserved worldwide.
echo RUNNING SCRIPT $0 ...
run_option="+exit"
if [ "$BRUN_RUN_MODE" != "" ]; then
case `echo $BRUN_RUN_MODE` in
interactive|interactive_debug) # run with GUI
run_option="+gui"
;;
batch_debug|batch) # run batch
run_option="+exit"
;;
*) # not supported
echo "ERROR: BRUN_RUN_MODE '$BRUN_RUN_MODE' not supported by $0!"
exit 1
esac
fi
# Unroll top files and add -f option before each
f_option=""
if [ "$BRUN_TOP_FILES" != "" ]; then
for top_file in ${BRUN_TOP_FILES}
do
if [ -f "$top_file" ]; then
f_option="$f_option -f $top_file"
else
echo "WARNING: top_file=$top_file does not exist, ignoring."
fi
done
fi
# Unroll cmd files and add -f option before each
if [ "$BRUN_CMD_FILES" != "" ]; then
for cmd_file in ${BRUN_CMD_FILES}
do
if [ -f "$cmd_file" ]; then
f_option="$f_option -f $cmd_file"
else
echo "WARNING: cmd_file=$cmd_file does not exist, ignoring."
fi
done
fi
# user tcl file
tcl_option=""
if [ "$BRUN_TCL_FILES" != "" ]; then
for tcl_file in ${BRUN_TCL_FILES}
4-16 Enterprise Manager Getting Started
Creating a Baseline Environment
Sample Single Run Script for IFV
© 2011 Cadence Design Systems, Inc. All rights reserved worldwide.
do
if [ -f "$tcl_file" ]; then
tcl_option="$tcl_option +tcl+$tcl_file"
else
echo "WARNING: tcl_file=$tcl_file does not exist, ignoring."
fi
done
fi
# Create vm tcl run file
vm_tcl="${BRUN_RUN_DIR}/vm_tcl.tcl"
vm_tcl_option=""
# Set engine from vsif
if [ "$BRUN_IFV_ENGINE" != "" ]; then
echo "define engine ${BRUN_IFV_ENGINE}" >> ${vm_tcl}
fi
# Set effort from vsif
if [ "$BRUN_IFV_EFFORT" != "" ]; then
echo "define effort ${BRUN_IFV_EFFORT}" >> ${vm_tcl}
fi
# Set halo from vsif
if [ "$BRUN_IFV_HALO" != "" ]; then
echo "define halo ${BRUN_IFV_HALO}" >> ${vm_tcl}
fi
# Always remove AFA - can be added back in below if desired but should be
# separate run
echo "catch {set afa_exist [string match *Total* [assertion -sum -auto] ]}"
>> ${vm_tcl}
echo "if {$afa_exist == 1} {" >> ${vm_tcl}
echo " assertion -del -auto }" >> ${vm_tcl}
# Set assertions from vsif and check to see if AFA was added by the user
echo "set add_auto 0" >> ${vm_tcl}
if [ "$BRUN_IFV_ASSERTIONS" != "" ]; then
echo "set add_auto [string match -auto $env(BRUN_IFV_ASSERTIONS) ]" >>
${vm_tcl}
echo "assertion -del -all" >> ${vm_tcl}
echo "assertion -add ${BRUN_IFV_ASSERTIONS}" >> ${vm_tcl}
fi
# Check to see if AFA are forced by user - if so don't issue warning message
echo "if {$afa_exist == 1 && $add_auto == 0} {" >> ${vm_tcl}
Enterprise Manager Getting Started 4-17
Creating a Baseline Environment
Using the Scan Script and the Predefined Filter Files
© 2011 Cadence Design Systems, Inc. All rights reserved worldwide.
echo " puts "ifv: *W,DELAFA: AFA checks are not supported in
vManager/unicov and have been deleted from the run (AFA)"}" >>
${vm_tcl}
# If not in a debug run mode, disable debug
if [ "$BRUN_RUN_MODE" = "batch" ]; then
echo "define debugmode off" >> ${vm_tcl}
else
echo "define debugmode on" >> ${vm_tcl}
fi
# Write out vplan
echo "alias -unset prove" >> ${vm_tcl}
echo "global env" >> ${vm_tcl}
echo "source $env(ABV_VM_UTIL)/tcl/create_vplan.tcl" >> ${vm_tcl}
echo "create_vplan" >> ${vm_tcl}
if [ "$BRUN_RUN_MODE" != "interactive_debug" ]; then
echo "prove" >> ${vm_tcl}
fi
echo "catch {set afa_error [string match *Fail* [assertion -summary -auto]
]}" >> ${vm_tcl}
echo "if {$afa_error == 1} {puts "ifv: *E,AFAFAIL: AFA failure detected
in IFV run - rerun job in interactive debug mode to debug (AFA)"}" >>
${vm_tcl}
# Alias prove to run the vm tcl
prove_tcl="${BRUN_RUN_DIR}/vm_prove.tcl"
echo "alias -set prove input ${BRUN_RUN_DIR}/vm_tcl.tcl" >> ${prove_tcl}
vm_tcl_option="+tcl+${prove_tcl}"
cmd="ifv ${vm_tcl_option} ${f_option} ${tcl_option} ${BRUN_CMD_ARGS}
${run_option} +coverage"
echo "Running: $cmd"
eval $cmd
exit 0
4.3 Using the Scan Script and the Predefined Filter
Files
In order to facilitate failure analysis, Enterprise Manager automatically invokes vm_scan.pl script at the
end of every run to scan the standard output, collect error messages and other interesting data, and
format them for display in Enterprise Manager.
4-18 Enterprise Manager Getting Started
Creating a Baseline Environment
Using the Scan Script and the Predefined Filter Files
© 2011 Cadence Design Systems, Inc. All rights reserved worldwide.
The vm_scan.pl script takes as input the log files from the run and a list of filter files. Each filter file
contains multiple customized filters that are designed to match and extract particular error messages and
other failures issued by a particular tool or agent, such as Incisive Simulator, Specman, or IFV. When
using Cadence tools, Enterprise Manager automatically detect the required set of filter files.
You can find the predefined filter files in INCISIV-install-dir/EMGRnn/bin/*flt. Table 4-1 describes the
predefined filter files.
To use a predefined 3rd party tool, filter file with Enterprise Manager:
● Define the scan_script attribute within a session, group or test container in the vsif and specify a
string invoking vm_scan.pl with the desired filters. For example:
group first_tests {
scan_script: "vm_scan.pl denali.flt modelsim.flt;";
...
};
Note If you need to set up the environment or perform other actions before calling the
vm_scan.pl script, you can specify the name of a wrapper script in the scan_script attribute and call
vm_scan.pl from the wrapper script.
Table 4-1 Predefined Filter Files
Filter File Name Description
denali.flt Filters for use with Denali.
ies.flt Filters for use with IES (the Specman filters and the Incisive
Simulator filters)
ifv.flt Filters for use with Incisive Formal Verifier.
ius.flt Filters for use with IES (no Specman filters).
modelsim.flt Filters for use with Modelsim
uvm.flt Filters for UVM messages
Note The ovm_sv_lib.flt filter file is used for backward
compatibility only.
shell.flt Filters to capture various shell-related events
specman.flt Filters for use with Specman
vcs.flt Filters for use with VCS
xsim.flt Filters for use with Xsim
Enterprise Manager Getting Started 4-19
Creating a Baseline Environment
Using the Scan Script and the Predefined Filter Files
© 2011 Cadence Design Systems, Inc. All rights reserved worldwide.
See Also
● If you are using a tool that does not have a factory filter file, see “Creating and Modifying Scan Script
Filters” on page 2-50 in Enterprise Manager Managing Regressions.
● vm_scan.pl on page B-13 in Enterprise Manager Managing Regressions
4-20 Enterprise Manager Getting Started
Creating a Baseline Environment
Using the Scan Script and the Predefined Filter Files
© 2011 Cadence Design Systems, Inc. All rights reserved worldwide.
Enterprise Manager Getting Started 5-1
© 2011 Cadence Design Systems, Inc. All rights reserved worldwide.
5 Launching a Session
You can launch and track a session in any one of the following ways:
● Run a session in batch and view the results after the session completes.
● Launch a session in batch and then track it interactively.
● Launch a session and track it interactively.
To launch a session:
1. Create a vsif file.
2. Invoke Enterprise Manager interactively or in batch and pass the name of the vsif.
The following sections describe launching and monitoring sessions:
● “Creating a Baseline vsif” on page 5-1
● “Launching a Session Interactively” on page 5-3
● “Launching a Session in Batch” on page 5-6
● “Tracking Running Sessions” on page 5-7
● “Stopping a Session or a Run” on page 5-18
● “Stopping a Session or a Run” on page 5-18
See Also
● “Setting Up the Launch Environment” on page 2-2 in Enterprise Manager Managing Regressions
5.1 Creating a Baseline vsif
At minimum, a vsif must include:
5-2 Enterprise Manager Getting Started
Launching a Session
Creating a Baseline vsif
© 2011 Cadence Design Systems, Inc. All rights reserved worldwide.
● A session container with a top_dir attribute defining the root directory for the session output files.
● A test container with a run_script and a scan_script attribute.
The examples shown below have additional attributes that specify the number of times to run a single
test (count) and the testbench files to load on top of the snapshot (top_files). The timeout number
defines the maximum execution time of the command given in the run_script attribute. If a run does not
complete within the specified time, it is killed and marked as an error.
Note The $ENV(env-var) expression returns the value of the specified environment variable. For
more information, see “Referencing Environment Variables in a vsif” on page 2-24 in Enterprise Manager
Managing Regressions.
Example 1 IES Baseline vsif
session my_first_session {
top_dir : $ENV(MY_REGRESSION_AREA);
output_mode : terminal;
pre_session_script: "$ENV(SCRIPTS}/irun_build_snapshot.sh" ;
};
group ius_tests {
sve_name: "$ENV(SVE)/ius.sve" ;
run_script: "$ENV(SCRIPTS)/irun_run.sh" ;
scan_script: "vm_scan.pl shell.flt ius.flt" ;
test test_basic {
hdl_files: "-f $ENV(TESTS)/test_basic.f";
sv_seed: 3;
};
test many_short {
hdl_files: "-f $ENV(TESTS)/test_short.f";
count: 10; // Run this many sims with random seed
};
};
Example 2 IFV Baseline vsif
It is important to disable Enterprise Manager’s timeout mechanism when running IFV.
session my_first_session {
top_dir : $ENV(MY_REGRESSION_AREA);
output_mode : terminal;
pre_session_script: "$ENV(SCRIPTS}/ifv_build_snapshot.sh" ;
};
group ifv_tests {
sve_name: "$ENV(SVE)/ifv.sve" ;
Enterprise Manager Getting Started 5-3
Launching a Session
Launching a Session Interactively
© 2011 Cadence Design Systems, Inc. All rights reserved worldwide.
run_script: "$ENV(SCRIPTS)/ifv_run.sh" ;
scan_script: "vm_scan.pl shell.flt ifv.flt" ;
timeout: 0; // disable timeout mechanism
run_mode: batch_debug; // write CEX and witness data
test test_basic {
top_files: "-f $ENV(TESTS)/test_basic.f";
};
};
Example 3 Specman Baseline vsif
A Specman vsif often has additional attributes to pass pre-commands and a test command to Specman.
session my_first_session {
top_dir : $ENV(MY_REGRESSION_AREA);
output_mode : terminal;
pre_session_script: "$ENV(SCRIPTS}/irun_build_snapshot.sh" ;
};
group ies_tests {
sve_name: "$ENV(SVE)/ies.sve" ;
run_script: "$ENV(SCRIPTS)/irun_run.sh" ;
scan_script: "vm_scan.pl shell.flt ies.flt" ;
pre_commands: "set checks ERROR_CONTINUE";
test_command: test;
test test_basic {
top_files: "$ENV(TESTS)/test_basic.e";
sv_seed: 3;
seed: 3; // passed directly to Specman
};
test many_short {
top_files: "$ENV(TESTS)/test_short.e";
count: 10; // Run this many times with random seed
};
};
5.2 Launching a Session Interactively
Before you launch a session, review “Setting Up the Launch Environment” on page 2-2 in Enterprise
Manager Managing Regressions to be sure that the launch environment variables are set correctly.
To launch a session interactively:
1. Type the following at the OS prompt:
5-4 Enterprise Manager Getting Started
Launching a Session
Launching a Session Interactively
© 2011 Cadence Design Systems, Inc. All rights reserved worldwide.
emanager [-des[ktop]] &
The Enterprise Manager main window opens. This window, shown in Figure 5-1, is the interface for
executing new sessions and performing analysis on a per-session basis.
Figure 5-1 Enterprise Manager Main Window
Note If you invoke Enterprise Manager in desktop mode, the buttons and menu commands that
invoke Enterprise Manager features are greyed out.
At the same time, the Enterprise Manager Console window also opens. This window, shown in
Figure 5-2, serves as the command prompt for Enterprise Manager and displays Enterprise Manager
messages.
Enterprise Manager Getting Started 5-5
Launching a Session
Launching a Session Interactively
© 2011 Cadence Design Systems, Inc. All rights reserved worldwide.
Figure 5-2 Enterprise Manager Console Window
2. Load the verification analysis files using the load command at the Enterprise Manager prompt in the
Enterprise Manager Console window.
The verification analysis files are e files that define Enterprise Manager file policies, rerun schemes,
and so on. For more information on these files, see Chapter 2 “Setting Up a Regression
Environment” in Enterprise Manager Managing Regressions.
3. Execute the setup command at the Enterprise Manager prompt or click Analysis – Setup or the
Setup button in the Enterprise Manager main window.
This command registers the file policies and schemes defined in the verification analysis files, as
well as the user-defined attributes declared in your vm_attributes.csv file.
Notes
● To load analysis environment files after executing the setup command, execute a reload or
restore in the Enterprise Manager Console window first.
● You might want to compile the verification and analysis environment, execute the setup
command and then save the environment so that you can easily restore this state. An alternative
is to add the setup command to the VMANAGER_PRE_COMMANDS setting. See “Passing
Commands to Enterprise Manager” on page 2-8 in Enterprise Manager Managing Regressions
for an example of how to set this variable.
4. Be sure that the Distributed Resource Manager (DRM) is set to Serial Local:
a. In the Enterprise Manager main window, click on Config.
b. Select the DRM tab.
Incisive_Enterprise_Manager_Getting_Star.pdf
Incisive_Enterprise_Manager_Getting_Star.pdf
Incisive_Enterprise_Manager_Getting_Star.pdf
Incisive_Enterprise_Manager_Getting_Star.pdf
Incisive_Enterprise_Manager_Getting_Star.pdf
Incisive_Enterprise_Manager_Getting_Star.pdf
Incisive_Enterprise_Manager_Getting_Star.pdf
Incisive_Enterprise_Manager_Getting_Star.pdf
Incisive_Enterprise_Manager_Getting_Star.pdf
Incisive_Enterprise_Manager_Getting_Star.pdf
Incisive_Enterprise_Manager_Getting_Star.pdf
Incisive_Enterprise_Manager_Getting_Star.pdf
Incisive_Enterprise_Manager_Getting_Star.pdf
Incisive_Enterprise_Manager_Getting_Star.pdf
Incisive_Enterprise_Manager_Getting_Star.pdf
Incisive_Enterprise_Manager_Getting_Star.pdf
Incisive_Enterprise_Manager_Getting_Star.pdf
Incisive_Enterprise_Manager_Getting_Star.pdf
Incisive_Enterprise_Manager_Getting_Star.pdf
Incisive_Enterprise_Manager_Getting_Star.pdf
Incisive_Enterprise_Manager_Getting_Star.pdf
Incisive_Enterprise_Manager_Getting_Star.pdf
Incisive_Enterprise_Manager_Getting_Star.pdf
Incisive_Enterprise_Manager_Getting_Star.pdf
Incisive_Enterprise_Manager_Getting_Star.pdf
Incisive_Enterprise_Manager_Getting_Star.pdf
Incisive_Enterprise_Manager_Getting_Star.pdf
Incisive_Enterprise_Manager_Getting_Star.pdf
Incisive_Enterprise_Manager_Getting_Star.pdf
Incisive_Enterprise_Manager_Getting_Star.pdf
Incisive_Enterprise_Manager_Getting_Star.pdf
Incisive_Enterprise_Manager_Getting_Star.pdf
Incisive_Enterprise_Manager_Getting_Star.pdf
Incisive_Enterprise_Manager_Getting_Star.pdf
Incisive_Enterprise_Manager_Getting_Star.pdf
Incisive_Enterprise_Manager_Getting_Star.pdf
Incisive_Enterprise_Manager_Getting_Star.pdf
Incisive_Enterprise_Manager_Getting_Star.pdf
Incisive_Enterprise_Manager_Getting_Star.pdf
Incisive_Enterprise_Manager_Getting_Star.pdf
Incisive_Enterprise_Manager_Getting_Star.pdf
Incisive_Enterprise_Manager_Getting_Star.pdf
Incisive_Enterprise_Manager_Getting_Star.pdf
Incisive_Enterprise_Manager_Getting_Star.pdf
Incisive_Enterprise_Manager_Getting_Star.pdf
Incisive_Enterprise_Manager_Getting_Star.pdf
Incisive_Enterprise_Manager_Getting_Star.pdf
Incisive_Enterprise_Manager_Getting_Star.pdf
Incisive_Enterprise_Manager_Getting_Star.pdf
Incisive_Enterprise_Manager_Getting_Star.pdf
Incisive_Enterprise_Manager_Getting_Star.pdf
Incisive_Enterprise_Manager_Getting_Star.pdf
Incisive_Enterprise_Manager_Getting_Star.pdf
Incisive_Enterprise_Manager_Getting_Star.pdf
Incisive_Enterprise_Manager_Getting_Star.pdf
Incisive_Enterprise_Manager_Getting_Star.pdf
Incisive_Enterprise_Manager_Getting_Star.pdf
Incisive_Enterprise_Manager_Getting_Star.pdf
Incisive_Enterprise_Manager_Getting_Star.pdf
Incisive_Enterprise_Manager_Getting_Star.pdf
Incisive_Enterprise_Manager_Getting_Star.pdf
Incisive_Enterprise_Manager_Getting_Star.pdf
Incisive_Enterprise_Manager_Getting_Star.pdf
Incisive_Enterprise_Manager_Getting_Star.pdf
Incisive_Enterprise_Manager_Getting_Star.pdf
Incisive_Enterprise_Manager_Getting_Star.pdf
Incisive_Enterprise_Manager_Getting_Star.pdf
Incisive_Enterprise_Manager_Getting_Star.pdf
Incisive_Enterprise_Manager_Getting_Star.pdf
Incisive_Enterprise_Manager_Getting_Star.pdf
Incisive_Enterprise_Manager_Getting_Star.pdf
Incisive_Enterprise_Manager_Getting_Star.pdf
Incisive_Enterprise_Manager_Getting_Star.pdf
Incisive_Enterprise_Manager_Getting_Star.pdf
Incisive_Enterprise_Manager_Getting_Star.pdf
Incisive_Enterprise_Manager_Getting_Star.pdf
Incisive_Enterprise_Manager_Getting_Star.pdf
Incisive_Enterprise_Manager_Getting_Star.pdf
Incisive_Enterprise_Manager_Getting_Star.pdf
Incisive_Enterprise_Manager_Getting_Star.pdf
Incisive_Enterprise_Manager_Getting_Star.pdf
Incisive_Enterprise_Manager_Getting_Star.pdf
Incisive_Enterprise_Manager_Getting_Star.pdf

More Related Content

Similar to Incisive_Enterprise_Manager_Getting_Star.pdf

Ibm tivoli monitoring for network performance v2.1 the mainframe network mana...
Ibm tivoli monitoring for network performance v2.1 the mainframe network mana...Ibm tivoli monitoring for network performance v2.1 the mainframe network mana...
Ibm tivoli monitoring for network performance v2.1 the mainframe network mana...Banking at Ho Chi Minh city
 
Vista deployment using tivoli provisioning manager for os deployment redp4295
Vista deployment using tivoli provisioning manager for os deployment redp4295Vista deployment using tivoli provisioning manager for os deployment redp4295
Vista deployment using tivoli provisioning manager for os deployment redp4295Banking at Ho Chi Minh city
 
Extending sap solutions to the mobile enterprise with ibm mobile first platfo...
Extending sap solutions to the mobile enterprise with ibm mobile first platfo...Extending sap solutions to the mobile enterprise with ibm mobile first platfo...
Extending sap solutions to the mobile enterprise with ibm mobile first platfo...
bupbechanhgmail
 
Program Directory for IBM Ported Tools for z/OS
Program Directory for IBM Ported Tools for z/OSProgram Directory for IBM Ported Tools for z/OS
Program Directory for IBM Ported Tools for z/OS
IBM India Smarter Computing
 
100PercentPureJavaCookbook-4_1_1
100PercentPureJavaCookbook-4_1_1100PercentPureJavaCookbook-4_1_1
100PercentPureJavaCookbook-4_1_1AbrarMoiz
 
Jdbc
JdbcJdbc
Deployment guide series ibm total storage productivity center for data sg247140
Deployment guide series ibm total storage productivity center for data sg247140Deployment guide series ibm total storage productivity center for data sg247140
Deployment guide series ibm total storage productivity center for data sg247140Banking at Ho Chi Minh city
 
Tivoli and web sphere application server on z os sg247062
Tivoli and web sphere application server on z os sg247062Tivoli and web sphere application server on z os sg247062
Tivoli and web sphere application server on z os sg247062Banking at Ho Chi Minh city
 
Ibm tivoli monitoring v5.1.1 implementation certification study guide redp3935
Ibm tivoli monitoring v5.1.1 implementation certification study guide redp3935Ibm tivoli monitoring v5.1.1 implementation certification study guide redp3935
Ibm tivoli monitoring v5.1.1 implementation certification study guide redp3935Banking at Ho Chi Minh city
 
Introducing tivoli personalized services manager 1.1 sg246031
Introducing tivoli personalized services manager 1.1 sg246031Introducing tivoli personalized services manager 1.1 sg246031
Introducing tivoli personalized services manager 1.1 sg246031Banking at Ho Chi Minh city
 
Solution deployment guide for ibm tivoli composite application manager for we...
Solution deployment guide for ibm tivoli composite application manager for we...Solution deployment guide for ibm tivoli composite application manager for we...
Solution deployment guide for ibm tivoli composite application manager for we...Banking at Ho Chi Minh city
 
Deploying rational applications with ibm tivoli configuration manager redp4171
Deploying rational applications with ibm tivoli configuration manager redp4171Deploying rational applications with ibm tivoli configuration manager redp4171
Deploying rational applications with ibm tivoli configuration manager redp4171Banking at Ho Chi Minh city
 
Deploying rational applications with ibm tivoli configuration manager redp4171
Deploying rational applications with ibm tivoli configuration manager redp4171Deploying rational applications with ibm tivoli configuration manager redp4171
Deploying rational applications with ibm tivoli configuration manager redp4171Banking at Ho Chi Minh city
 
digital marketing training in bangalore
digital marketing training in bangaloredigital marketing training in bangalore
digital marketing training in bangalore
Venus Tech Inc.
 
Ibm tivoli workload scheduler for z os best practices end-to-end and mainfram...
Ibm tivoli workload scheduler for z os best practices end-to-end and mainfram...Ibm tivoli workload scheduler for z os best practices end-to-end and mainfram...
Ibm tivoli workload scheduler for z os best practices end-to-end and mainfram...Banking at Ho Chi Minh city
 
BOOK - IBM Implementing ibm system directory 6.1
BOOK - IBM Implementing ibm system directory 6.1BOOK - IBM Implementing ibm system directory 6.1
BOOK - IBM Implementing ibm system directory 6.1
Satya Harish
 
Pda management with ibm tivoli configuration manager sg246951
Pda management with ibm tivoli configuration manager sg246951Pda management with ibm tivoli configuration manager sg246951
Pda management with ibm tivoli configuration manager sg246951Banking at Ho Chi Minh city
 
Deployment guide series ibm tivoli composite application manager for web sphe...
Deployment guide series ibm tivoli composite application manager for web sphe...Deployment guide series ibm tivoli composite application manager for web sphe...
Deployment guide series ibm tivoli composite application manager for web sphe...Banking at Ho Chi Minh city
 

Similar to Incisive_Enterprise_Manager_Getting_Star.pdf (20)

Ibm tivoli monitoring for network performance v2.1 the mainframe network mana...
Ibm tivoli monitoring for network performance v2.1 the mainframe network mana...Ibm tivoli monitoring for network performance v2.1 the mainframe network mana...
Ibm tivoli monitoring for network performance v2.1 the mainframe network mana...
 
Vista deployment using tivoli provisioning manager for os deployment redp4295
Vista deployment using tivoli provisioning manager for os deployment redp4295Vista deployment using tivoli provisioning manager for os deployment redp4295
Vista deployment using tivoli provisioning manager for os deployment redp4295
 
Extending sap solutions to the mobile enterprise with ibm mobile first platfo...
Extending sap solutions to the mobile enterprise with ibm mobile first platfo...Extending sap solutions to the mobile enterprise with ibm mobile first platfo...
Extending sap solutions to the mobile enterprise with ibm mobile first platfo...
 
MK-99DF8208-03
MK-99DF8208-03MK-99DF8208-03
MK-99DF8208-03
 
Program Directory for IBM Ported Tools for z/OS
Program Directory for IBM Ported Tools for z/OSProgram Directory for IBM Ported Tools for z/OS
Program Directory for IBM Ported Tools for z/OS
 
100PercentPureJavaCookbook-4_1_1
100PercentPureJavaCookbook-4_1_1100PercentPureJavaCookbook-4_1_1
100PercentPureJavaCookbook-4_1_1
 
Jdbc
JdbcJdbc
Jdbc
 
Deployment guide series ibm total storage productivity center for data sg247140
Deployment guide series ibm total storage productivity center for data sg247140Deployment guide series ibm total storage productivity center for data sg247140
Deployment guide series ibm total storage productivity center for data sg247140
 
Report-V1.5_with_comments
Report-V1.5_with_commentsReport-V1.5_with_comments
Report-V1.5_with_comments
 
Tivoli and web sphere application server on z os sg247062
Tivoli and web sphere application server on z os sg247062Tivoli and web sphere application server on z os sg247062
Tivoli and web sphere application server on z os sg247062
 
Ibm tivoli monitoring v5.1.1 implementation certification study guide redp3935
Ibm tivoli monitoring v5.1.1 implementation certification study guide redp3935Ibm tivoli monitoring v5.1.1 implementation certification study guide redp3935
Ibm tivoli monitoring v5.1.1 implementation certification study guide redp3935
 
Introducing tivoli personalized services manager 1.1 sg246031
Introducing tivoli personalized services manager 1.1 sg246031Introducing tivoli personalized services manager 1.1 sg246031
Introducing tivoli personalized services manager 1.1 sg246031
 
Solution deployment guide for ibm tivoli composite application manager for we...
Solution deployment guide for ibm tivoli composite application manager for we...Solution deployment guide for ibm tivoli composite application manager for we...
Solution deployment guide for ibm tivoli composite application manager for we...
 
Deploying rational applications with ibm tivoli configuration manager redp4171
Deploying rational applications with ibm tivoli configuration manager redp4171Deploying rational applications with ibm tivoli configuration manager redp4171
Deploying rational applications with ibm tivoli configuration manager redp4171
 
Deploying rational applications with ibm tivoli configuration manager redp4171
Deploying rational applications with ibm tivoli configuration manager redp4171Deploying rational applications with ibm tivoli configuration manager redp4171
Deploying rational applications with ibm tivoli configuration manager redp4171
 
digital marketing training in bangalore
digital marketing training in bangaloredigital marketing training in bangalore
digital marketing training in bangalore
 
Ibm tivoli workload scheduler for z os best practices end-to-end and mainfram...
Ibm tivoli workload scheduler for z os best practices end-to-end and mainfram...Ibm tivoli workload scheduler for z os best practices end-to-end and mainfram...
Ibm tivoli workload scheduler for z os best practices end-to-end and mainfram...
 
BOOK - IBM Implementing ibm system directory 6.1
BOOK - IBM Implementing ibm system directory 6.1BOOK - IBM Implementing ibm system directory 6.1
BOOK - IBM Implementing ibm system directory 6.1
 
Pda management with ibm tivoli configuration manager sg246951
Pda management with ibm tivoli configuration manager sg246951Pda management with ibm tivoli configuration manager sg246951
Pda management with ibm tivoli configuration manager sg246951
 
Deployment guide series ibm tivoli composite application manager for web sphe...
Deployment guide series ibm tivoli composite application manager for web sphe...Deployment guide series ibm tivoli composite application manager for web sphe...
Deployment guide series ibm tivoli composite application manager for web sphe...
 

Recently uploaded

Cosmetic shop management system project report.pdf
Cosmetic shop management system project report.pdfCosmetic shop management system project report.pdf
Cosmetic shop management system project report.pdf
Kamal Acharya
 
Hybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdf
Hybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdfHybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdf
Hybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdf
fxintegritypublishin
 
ethical hacking in wireless-hacking1.ppt
ethical hacking in wireless-hacking1.pptethical hacking in wireless-hacking1.ppt
ethical hacking in wireless-hacking1.ppt
Jayaprasanna4
 
Nuclear Power Economics and Structuring 2024
Nuclear Power Economics and Structuring 2024Nuclear Power Economics and Structuring 2024
Nuclear Power Economics and Structuring 2024
Massimo Talia
 
ethical hacking-mobile hacking methods.ppt
ethical hacking-mobile hacking methods.pptethical hacking-mobile hacking methods.ppt
ethical hacking-mobile hacking methods.ppt
Jayaprasanna4
 
Design and Analysis of Algorithms-DP,Backtracking,Graphs,B&B
Design and Analysis of Algorithms-DP,Backtracking,Graphs,B&BDesign and Analysis of Algorithms-DP,Backtracking,Graphs,B&B
Design and Analysis of Algorithms-DP,Backtracking,Graphs,B&B
Sreedhar Chowdam
 
Halogenation process of chemical process industries
Halogenation process of chemical process industriesHalogenation process of chemical process industries
Halogenation process of chemical process industries
MuhammadTufail242431
 
AKS UNIVERSITY Satna Final Year Project By OM Hardaha.pdf
AKS UNIVERSITY Satna Final Year Project By OM Hardaha.pdfAKS UNIVERSITY Satna Final Year Project By OM Hardaha.pdf
AKS UNIVERSITY Satna Final Year Project By OM Hardaha.pdf
SamSarthak3
 
Vaccine management system project report documentation..pdf
Vaccine management system project report documentation..pdfVaccine management system project report documentation..pdf
Vaccine management system project report documentation..pdf
Kamal Acharya
 
addressing modes in computer architecture
addressing modes  in computer architectureaddressing modes  in computer architecture
addressing modes in computer architecture
ShahidSultan24
 
Democratizing Fuzzing at Scale by Abhishek Arya
Democratizing Fuzzing at Scale by Abhishek AryaDemocratizing Fuzzing at Scale by Abhishek Arya
Democratizing Fuzzing at Scale by Abhishek Arya
abh.arya
 
J.Yang, ICLR 2024, MLILAB, KAIST AI.pdf
J.Yang,  ICLR 2024, MLILAB, KAIST AI.pdfJ.Yang,  ICLR 2024, MLILAB, KAIST AI.pdf
J.Yang, ICLR 2024, MLILAB, KAIST AI.pdf
MLILAB
 
CME397 Surface Engineering- Professional Elective
CME397 Surface Engineering- Professional ElectiveCME397 Surface Engineering- Professional Elective
CME397 Surface Engineering- Professional Elective
karthi keyan
 
Student information management system project report ii.pdf
Student information management system project report ii.pdfStudent information management system project report ii.pdf
Student information management system project report ii.pdf
Kamal Acharya
 
一比一原版(SFU毕业证)西蒙菲莎大学毕业证成绩单如何办理
一比一原版(SFU毕业证)西蒙菲莎大学毕业证成绩单如何办理一比一原版(SFU毕业证)西蒙菲莎大学毕业证成绩单如何办理
一比一原版(SFU毕业证)西蒙菲莎大学毕业证成绩单如何办理
bakpo1
 
The role of big data in decision making.
The role of big data in decision making.The role of big data in decision making.
The role of big data in decision making.
ankuprajapati0525
 
Gen AI Study Jams _ For the GDSC Leads in India.pdf
Gen AI Study Jams _ For the GDSC Leads in India.pdfGen AI Study Jams _ For the GDSC Leads in India.pdf
Gen AI Study Jams _ For the GDSC Leads in India.pdf
gdsczhcet
 
Railway Signalling Principles Edition 3.pdf
Railway Signalling Principles Edition 3.pdfRailway Signalling Principles Edition 3.pdf
Railway Signalling Principles Edition 3.pdf
TeeVichai
 
Sachpazis:Terzaghi Bearing Capacity Estimation in simple terms with Calculati...
Sachpazis:Terzaghi Bearing Capacity Estimation in simple terms with Calculati...Sachpazis:Terzaghi Bearing Capacity Estimation in simple terms with Calculati...
Sachpazis:Terzaghi Bearing Capacity Estimation in simple terms with Calculati...
Dr.Costas Sachpazis
 
COLLEGE BUS MANAGEMENT SYSTEM PROJECT REPORT.pdf
COLLEGE BUS MANAGEMENT SYSTEM PROJECT REPORT.pdfCOLLEGE BUS MANAGEMENT SYSTEM PROJECT REPORT.pdf
COLLEGE BUS MANAGEMENT SYSTEM PROJECT REPORT.pdf
Kamal Acharya
 

Recently uploaded (20)

Cosmetic shop management system project report.pdf
Cosmetic shop management system project report.pdfCosmetic shop management system project report.pdf
Cosmetic shop management system project report.pdf
 
Hybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdf
Hybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdfHybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdf
Hybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdf
 
ethical hacking in wireless-hacking1.ppt
ethical hacking in wireless-hacking1.pptethical hacking in wireless-hacking1.ppt
ethical hacking in wireless-hacking1.ppt
 
Nuclear Power Economics and Structuring 2024
Nuclear Power Economics and Structuring 2024Nuclear Power Economics and Structuring 2024
Nuclear Power Economics and Structuring 2024
 
ethical hacking-mobile hacking methods.ppt
ethical hacking-mobile hacking methods.pptethical hacking-mobile hacking methods.ppt
ethical hacking-mobile hacking methods.ppt
 
Design and Analysis of Algorithms-DP,Backtracking,Graphs,B&B
Design and Analysis of Algorithms-DP,Backtracking,Graphs,B&BDesign and Analysis of Algorithms-DP,Backtracking,Graphs,B&B
Design and Analysis of Algorithms-DP,Backtracking,Graphs,B&B
 
Halogenation process of chemical process industries
Halogenation process of chemical process industriesHalogenation process of chemical process industries
Halogenation process of chemical process industries
 
AKS UNIVERSITY Satna Final Year Project By OM Hardaha.pdf
AKS UNIVERSITY Satna Final Year Project By OM Hardaha.pdfAKS UNIVERSITY Satna Final Year Project By OM Hardaha.pdf
AKS UNIVERSITY Satna Final Year Project By OM Hardaha.pdf
 
Vaccine management system project report documentation..pdf
Vaccine management system project report documentation..pdfVaccine management system project report documentation..pdf
Vaccine management system project report documentation..pdf
 
addressing modes in computer architecture
addressing modes  in computer architectureaddressing modes  in computer architecture
addressing modes in computer architecture
 
Democratizing Fuzzing at Scale by Abhishek Arya
Democratizing Fuzzing at Scale by Abhishek AryaDemocratizing Fuzzing at Scale by Abhishek Arya
Democratizing Fuzzing at Scale by Abhishek Arya
 
J.Yang, ICLR 2024, MLILAB, KAIST AI.pdf
J.Yang,  ICLR 2024, MLILAB, KAIST AI.pdfJ.Yang,  ICLR 2024, MLILAB, KAIST AI.pdf
J.Yang, ICLR 2024, MLILAB, KAIST AI.pdf
 
CME397 Surface Engineering- Professional Elective
CME397 Surface Engineering- Professional ElectiveCME397 Surface Engineering- Professional Elective
CME397 Surface Engineering- Professional Elective
 
Student information management system project report ii.pdf
Student information management system project report ii.pdfStudent information management system project report ii.pdf
Student information management system project report ii.pdf
 
一比一原版(SFU毕业证)西蒙菲莎大学毕业证成绩单如何办理
一比一原版(SFU毕业证)西蒙菲莎大学毕业证成绩单如何办理一比一原版(SFU毕业证)西蒙菲莎大学毕业证成绩单如何办理
一比一原版(SFU毕业证)西蒙菲莎大学毕业证成绩单如何办理
 
The role of big data in decision making.
The role of big data in decision making.The role of big data in decision making.
The role of big data in decision making.
 
Gen AI Study Jams _ For the GDSC Leads in India.pdf
Gen AI Study Jams _ For the GDSC Leads in India.pdfGen AI Study Jams _ For the GDSC Leads in India.pdf
Gen AI Study Jams _ For the GDSC Leads in India.pdf
 
Railway Signalling Principles Edition 3.pdf
Railway Signalling Principles Edition 3.pdfRailway Signalling Principles Edition 3.pdf
Railway Signalling Principles Edition 3.pdf
 
Sachpazis:Terzaghi Bearing Capacity Estimation in simple terms with Calculati...
Sachpazis:Terzaghi Bearing Capacity Estimation in simple terms with Calculati...Sachpazis:Terzaghi Bearing Capacity Estimation in simple terms with Calculati...
Sachpazis:Terzaghi Bearing Capacity Estimation in simple terms with Calculati...
 
COLLEGE BUS MANAGEMENT SYSTEM PROJECT REPORT.pdf
COLLEGE BUS MANAGEMENT SYSTEM PROJECT REPORT.pdfCOLLEGE BUS MANAGEMENT SYSTEM PROJECT REPORT.pdf
COLLEGE BUS MANAGEMENT SYSTEM PROJECT REPORT.pdf
 

Incisive_Enterprise_Manager_Getting_Star.pdf

  • 2. ©2006-2011 Cadence Design Systems, Inc. All rights reserved worldwide. Printed in the United States of America. Cadence Design Systems, Inc. (Cadence), 2655 Seely Ave., San Jose, CA 95134, USA. Incisive© Enterprise Manager contains technology licensed from, and copyrighted by: Free Software Foundation, Inc. and is © 1989, 1991, 1999, 2006, Free Software Foundation, Inc. All rights reserved. Regents of the University of Colorado and is © 1995-2004, Regents of the University of Colorado. All rights reserved. RSA Security, Inc. All rights reserved. Ioi Kim Lam and is © 1993-1995. All rights reserved. Regents of the University of California and is © 1990, 1994 Regents of the University of California. All rights reserved. AT&T Corp. and is © AT&T Corp. All rights reserved. Thai Open Source Software Center Ltd and Clark Cooper, and is © 1998, 1999, 2000, Thai Open Source Software Center Ltd and Clark Cooper. All rights reserved. Expat maintainers and is © 2001-2003. All rights reserved. Scriptics Corporation and is © Scriptics Corporation. All rights reserved. Open Source Initiative and is © 2004, Open Source Initiative. All rights reserved. Expert Interface Technologies and is © 1996 Expert Interface Technologies. All rights reserved. PostgreSQL Global Development Group and is © 1996-2007, PostgreSQL Global Development Group. All rights reserved. PostgreSQL ODBC and is © 1996-2008, PostgreSQL ODBC. All rights reserved. IBM Corporation and others and is © 2000, 2007, IBM Corporation and others. All rights reserved. MySQL AB and is © 1995-2002, 2000-2007, MySQL AB. All rights reserved. Ke Jin and is © 1995, 1996, Ke Jin. All rights reserved. Patrick Powell and is © 1995, Patrick Powell. All rights reserved. Eric Sharkey and is © 2005, Eric Sharkey. All rights reserved. Nick Gorham and is © 1999, Nick Gorham. All rights reserved. David Rolsky and is © 2000-2003, David Rolsky. All rights reserved. Tim Bunce and is © 1994-2008, Tim Bunce. All rights reserved. Yingyao Zhou & Guangzhou Zo and is © 1998-2008, Yingyao Zhou & Guangzhou Zo. All rights reserved. Microsoft Corporation and is © 2005, 2007, 2008, Microsoft Corporation. All rights reserved. Sun Microsystems, Inc.and is © 1997, 2007, Sun Microsystems, Inc. All rights reserved. Lawrence Rosen, and is © 2005, Lawrence Rosen. All rights reserved. Oracle and/or its affiliates, and is © 2000, 2010 Oracle and/or its affiliates. All rights reserved. Associated third-party license terms may be found at <install-dir>/doc/thirdpartyinfo/. Open SystemC, Open SystemC Initiative, OSCI, SystemC, and SystemC Initiative are trademarks or registered trademarks of Open SystemC Initiative, Inc. in the United States and other countries and are used with permission. Trademarks: Trademarks and service marks of Cadence Design Systems, Inc. contained in this document are attributed to Cadence with the appropriate symbol. For queries regarding Cadence’s trademarks, contact the corporate legal department at the address shown above or call 800.862.4522. All other trademarks are the property of their respective holders. Restricted Permission: This publication is protected by copyright law and international treaties and contains trade secrets and proprietary information owned by Cadence. Unauthorized reproduction or distribution of this publication, or any portion of it, may result in civil and criminal penalties. Except as specified in this permission statement, this publication may not be copied, reproduced, modified, published, uploaded, posted, transmitted, or distributed in any way, without prior written permission from Cadence. Unless otherwise agreed to by Cadence in writing, this statement grants Cadence customers permission to print one (1) hard copy of this publication subject to the following conditions: The publication may be used only in accordance with a written agreement between Cadence and its customer; The publication may not be modified in any way; Any authorized copy of the publication or portion thereof must include all original copyright, trademark, and other proprietary notices and this permission statement; The information contained in this document cannot be used in the development of like products or software, whether for internal or external use, and shall not be used for the benefit of any other party, whether or not for consideration Disclaimer: Information in this publication is subject to change without notice and does not represent a commitment on the part of Cadence. Except as may be explicitly set forth in such agreement, Cadence does not make, and expressly disclaims, any representations or warranties as to the completeness, accuracy or usefulness of the information contained in this document. Cadence does not warrant that use of such information will not infringe any third party rights, nor does Cadence assume any liability for damages or costs of any kind that may result from use of such information. THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON- INFRINGEMENT. IN NO EVENT SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. Restricted Rights: Use, duplication, or disclosure by the Government is subject to restrictions as set forth in FAR52.227-14 and DFAR252.227- 7013 et seq. or its successor.
  • 3. Enterprise Manager Getting Started Contents 1 Using Enterprise Manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1 1.1 Enterprise Manager Task Flow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.2 How Enterprise Manager Can Work For You . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.2.1 Regression Analysis without Runner Integration . . . . . . . . . . . . . . . . . . . . . . . 1.2.2 Regression Analysis and Management with Runner Integration . . . . . . . . . . . 1.3 Next Steps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 Managing vManager Memory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2 2.1 Automatic Settings for Optimal Garbage Collection . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.1.1 Automating Garbage Collection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.1.2 Setting the Optimal Process Size for Automated GC . . . . . . . . . . . . . . . . . . . 2.1.3 On-the-Fly Garbage Collection in Automated GC . . . . . . . . . . . . . . . . . . . . . 2.1.4 Printing the Automated GC Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.1.5 Interaction with Other Memory Configuration Options . . . . . . . . . . . . . . . . . 2.2 Guidelines for Using vManager Memory Efficiently . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 Regression Analysis without Runner Integration . . . . . . . . . . . . . .3 3.1 Setting Up the Run Execution Environment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.2 Triggering vsof Creation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.3 Controlling the Single Run vsof content . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.4 Collecting Single-Run vsofs into a Collected vsof . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.5 Using Local Disk Execution for Single Runs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.6 Re-invoking Runs Executed Outside of Enterprise Manager . . . . . . . . . . . . . . . . . . . . . 3.7 Read Runs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.7.1 Running Read Runs command through GUI . . . . . . . . . . . . . . . . . . . . . . . . . . 3.7.2 Running Read Runs command through BATCH . . . . . . . . . . . . . . . . . . . . . . 3
  • 4. iv Enterprise Manager Getting Star 3.7.2.1 collect_runs (command) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 3.7.2.2 collect_runs (backward compatibility changes) . . . . . . . . . . . . . . . 3 4 Creating a Baseline Environment . . . . . . . . . . . . . . . . . . . . . . . . . . .4 4.1 Setting Up the Project Environment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.2 Adapting a Run Script for Enterprise Manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.2.1 Setting Up the Run Environment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.2.2 Defining Run Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.2.3 Collecting Coverage and Check Data in Unicov Format . . . . . . . . . . . . . . . . . 4.2.4 Defining Run Modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.2.5 Building a Simulation Snapshot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 4.2.6 Invoking a Run . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 4.2.7 Sample Single Run Script for Incisive Simulator . . . . . . . . . . . . . . . . . . . . . 4 4.2.8 Sample Single Run Script for IFV . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 4.3 Using the Scan Script and the Predefined Filter Files . . . . . . . . . . . . . . . . . . . . . . . . . 4 5 Launching a Session . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5 5.1 Creating a Baseline vsif . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.2 Launching a Session Interactively . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.3 Launching a Session in Batch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.4 Tracking Running Sessions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.4.1 Refreshing Session Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 5.5 Reseeding and dynamic load testing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 5.6 Stopping a Session or a Run . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 6 Analyzing Failures and Launching Reruns . . . . . . . . . . . . . . . . . . .6 6.1 Reading Session Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.2 Clearing Session Data from Memory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.3 Analyzing Session Failures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.4 Analyzing Run Failures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.4.1 Predefined Failures Views . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.4.1.1 First Failures View . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.4.1.2 All Failures View . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 6.5 Enhancements in the Runs Table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 6.5.1 Formal Properties View . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 6.5.2 Contribution Runs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 6.6 Viewing Run Details . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
  • 5. Enterprise Manager Getting Started 6.7 Grouping Runs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-1 6.7.1 Grouping by One or More Attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 6.7.2 Ungrouping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 6.7.3 Grouping Failure Attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 6.7.4 Grouping Time-Based Attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 6.8 Filtering Runs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 6.8.1 Filtering Selected Runs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 6.8.2 Filtering by One or More Attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 6.8.3 Filtering by Match Expression . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 6.8.4 Unfiltering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 6.9 Analyzing Check (Assertion) Failures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 6.9.1 Identifying Checks Using a Desktop License . . . . . . . . . . . . . . . . . . . . . . . . 6 6.9.2 Analyzing Checks Using an Enterprise Manager License . . . . . . . . . . . . . . . 6 6.10 Finding the Shortest Simulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 6.11 Rerunning a Session . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 7 Checks and Coverage and Contribution Metrics . . . . . . . . . . . . . .7 7.1 Simulation Oriented Contribution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7.1.1 Check Metric . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7.1.2 Coverage Metric . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7.2 Formal Contribution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7.2.1 Formal Check Metric . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7.2.2 Formal Coverage Metric . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7.2.2.1 Unreachable Marker . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7.3 Analyzing Metrics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7.4 Opening the vPlan Window from Specman, Incisive Simulator, or a Shell . . . . . . . . . . 7.4.1 Setting Up the Run Execution Environment . . . . . . . . . . . . . . . . . . . . . . . . . . 7.4.2 Opening the vPlan Window from Incisive Simulator . . . . . . . . . . . . . . . . . . . 7.4.3 Opening the vPlan Window from Specman . . . . . . . . . . . . . . . . . . . . . . . . . . . 7.4.4 Opening the vPlan Window from a Shell . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7.5 Opening the vPlan Window from Enterprise Manager or from a Shell . . . . . . . . . . . . . 7.6 Understanding the Default vPlan View . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 7.7 Viewing Details for a Verification Plan Element . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 7.7.1 Verification Plan Tree Icons . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 7.7.2 Grading Precision . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 7.7.3 Viewing Details for a Section or Coverage Container . . . . . . . . . . . . . . . . . . 7 7.7.4 Viewing Details for a Testcase Item . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
  • 6. vi Enterprise Manager Getting Star 7.7.5 Viewing Details for a Check . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 7.7.6 Viewing Details for a Functional Coverage Item . . . . . . . . . . . . . . . . . . . . . . 7 7.7.6.1 SystemVerilog Cross Bins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 7.7.6.2 e String Items . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 7.7.7 Viewing Details for a Code Coverage Item . . . . . . . . . . . . . . . . . . . . . . . . . . 7 7.8 Reading in the Verification Plan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 7.9 Enhancements in vPlan for Checks and Coverage Contribution solution . . . . . . . . . . 7 7.9.1 Verification_metrics (Default Perspective) . . . . . . . . . . . . . . . . . . . . . . . . . . 7 7.10 Details Pane Enhancements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 7.10.1 Check Details Pane . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 7.10.2 Cover Details Pane . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 7.11 Configuring the vPlan Window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
  • 7. Enterprise Manager Getting Started 1-1 © 2011 Cadence Design Systems, Inc. All rights reserved worldwide. 1 Using Enterprise Manager Here are just a few of the ways that Enterprise Manager can facilitate the basic, every-day tasks of verification process: ● Launch thousands of runs in a single session using a distributed resource manager ● Facilitate failure analysis by automatically extracting, filtering, and grouping key information from all log files in one or more sessions ● Launch the rerun of failed tests in debug mode and manage failure scenarios Note For IFV, you store CEXs and view them from Enterprise Manager without rerunning. ● Facilitate coverage and assertion analysis by presenting data gathered by multiple agents (Incisive Simulator, Incisive Formal Verifier, and Specman) in the same window For all these tasks, you need only a desktop_manager license key. With an enterprise_manager license key, you have access to additional features: ● Creating HTML reports ● Test ranking ● Low power verification ● Verification planning with Enterprise Planner ● Advanced coverage analysis and vplan refinement tools ● Creating progress charts and reports 1.1 Enterprise Manager Task Flow This book helps you learn how to perform the basic tasks shown in Figure 1-1. For all these tasks, you need only a desktop_manager license key.
  • 8. 1-2 Enterprise Manager Getting Started Using Enterprise Manager How Enterprise Manager Can Work For You © 2011 Cadence Design Systems, Inc. All rights reserved worldwide. Figure 1-1 Enterprise Manager User Task Flow A Note About Planning the Project Depending on the size and complexity of the project, the verification plan can be as simple as a list of scenarios that you plan to test or as complicated as an executable verification plan that references multiple sub-plans and testbenches. You can create an executable plan using Enterprise Planner (if you have an Enterprise Manager license) or your favorite editor. Executable plans let you map specific metrics to each feature that you intend to verify, thus enabling you to track project progress towards closure. This manual does not cover project planning. For more information on this important task, see Getting Started with Enterprise Planner or Enterprise Manager Verification Planning. 1.2 How Enterprise Manager Can Work For You Enterprise Manager can work for you in the following ways: ● Regression analysis — you can use Enterprise Manager to facilitate failure analysis and coverage analysis of regression results. Assess Status Run Regressions Analyze Failures Analyze Metrics Closure? yes no Plan the Project Set Up the Verification Environment
  • 9. Enterprise Manager Getting Started 1-3 Using Enterprise Manager Regression Analysis without Runner Integration © 2011 Cadence Design Systems, Inc. All rights reserved worldwide. ● Regression analysis and management — in addition to regression analysis, you can use Enterprise Manager’s internal runner to launch regressions and manage regression data. If you have a working test harness and Distributed Resource Manager (DRM) integration, you might choose to start working first with Enterprise Manager’s regression analysis capabilities. Without changing the way you run regressions, you can simply provide Enterprise Manager with the name of the top-level directory containing regression results. Enterprise Manager collects the run results and displays them as a single session, thus facilitating the analysis of run failures and cumulative coverage results. If you do not have a sophisticated test harness, you can integrate Enterprise Manager’s internal runner and DRM into your run environment following the step-by-step procedures described in this manual and in Enterprise Manager Managing Regressions. After you have set up a baseline regression environment and can launch regular regressions, you can continue to customize and automate the environment to manage project resources effectively and facilitate regression analysis and reporting of results. The following sections describe in more detail what you need to do to enable Enterprise Manager to work for you: ● “Regression Analysis without Runner Integration” on page 1-3 ● “Regression Analysis and Management with Runner Integration” on page 1-5 1.2.1 Regression Analysis without Runner Integration Note Regression analysis without runner integration is supported for Incisive Simulator and for Specman, and requires either a Desktop Manager or an Enterprise Manager license. This feature is not currently supported for Incisive Formal Verifier. To perform regression analysis without runner integration: 1. Add the Enterprise Manager environment to the run execution environment. 2. Execute one or more runs while triggering Incisive Simulator and/or Specman to dump information from each run into a “single-run vsof”. Note A vsof (a verification session output file) as created by Enterprise Manager’s internal runner contains information about a set of runs that are launched serially or in parallel using a Distributed Resource Manager (DRM). When the internal runner is not used, a single-run vsof contains only the results of a single run, including: ● General information about the run, such as the location of the log file, the start time and the end time. ● Coverage information, including the location of the coverage data file (UCD) and the coverage model file (UCM).
  • 10. 1-4 Enterprise Manager Getting Started Using Enterprise Manager Regression Analysis without Runner Integration © 2011 Cadence Design Systems, Inc. All rights reserved worldwide. ● Additional properties (attributes) of the run such as the random seed value and the simulation time. 3. Invoke Enterprise Manager to collect the single-run vsofs into a “collected vsof”. Collection allows you to: ● Perform analysisofmultiplerunsas if they hadbeen executed asa single sessionusing Enterprise Manager’s internal runner. ● Assign run attribute values, such as verification scope or a user-defined scan script, to a set of runs. 4. Perform failure analysis. Once a collected vsof has been created, regardless of whether all the runs have completed, you can load it into Desktop Manager or Enterprise Manager and start to analyze failures. Using the vsof attributes to filter and group the run results, you can quickly determine the root cause of similar failures across multiple runs. For example, one of Enterprise Manager’s predefined views of run results is First Failures, which selects only the failed runs in a session and groups them according to the “description” attribute of the first failure with severity “critical” in the vsof. This allows you to easily see whether several runs failed because of the same error. Figure 1-2 below shows a First Failure view where three runs failed because of a mismatch between the write burst that was expected and the write burst that was actually collected. Figure 1-2 Sample First Failures View of Run Results 5. Perform coverage analysis. To analyze coverage results using Enterprise Manager, you can load one or more collected vsofs, select all the runs of interest and open Enterprise Manager’s Verification Plan (vPlan) Tree window. Figure 1-3 shows a sample vPlan window displaying the results from scenarios (testcases), checkers (assertions), functional coverage and code coverage.
  • 11. Enterprise Manager Getting Started 1-5 Using Enterprise Manager Regression Analysis and Management with Runner Integration © 2011 Cadence Design Systems, Inc. All rights reserved worldwide. Note Analysis of sessions created outside of Enterprise Manager together with those created by Enterprise Manager’s internal runner is supported. Figure 1-3 Sample Verification Plan Tree Window 1.2.2 Regression Analysis and Management with Runner Integration Note Regression analysis and management with runner integration is supported for Incisive Simulator, for Specman, and for Incisive Formal Verifier. It requires either a Desktop Manager or an Enterprise Manager license. In order to integrate Enterprise Manager’s runner into your environment, it is helpful to understand how Enterprise Manager uses attributes — both predefined attributes and user-defined attributes — to launch regressions and facilitate regression analysis. The following section attempts to give you the necessary conceptual background for runner integration by explaining how attributes enable:
  • 12. 1-6 Enterprise Manager Getting Started Using Enterprise Manager Regression Analysis and Management with Runner Integration © 2011 Cadence Design Systems, Inc. All rights reserved worldwide. ● Defining the regression session you want to launch. ● Passing information to the simulator (or other agent) for each run in the session. ● Extracting information about each run from its run log. ● Filtering and grouping runs in the session to facilitate regression analysis. To perform regression analysis and management with runner integration: 1. You define the tests that you want to run in a Verification Session Input File (vsif file). For each test, and the session itself, you define various attributes. For example, the following vsif defines one attribute for the session and four attributes for a single test. session short_tests { top_dir : $ENV(REGRESSION_AREA); }; test simple_test { run_script: $ENV(SCRIPTS)/run_xsoc.sh; run_mode: batch; sv_seed: 98765; }; Notes ● The run_script attribute specifies a script capable of launching a single run in your environment. You or someone familiar with your environment must create this script. ● In case a non Cadence tool is used, such as a simulator from another vendor, the scan_script attribute is required in order to extract interesting data from the run logs. You can use the scan script provided with Enterprise Manager in the following way: scan_script: vm_scan.pl vcs.flt; // Or modelsim.flt in case of Modelsim. 2. When you launch the session, the Enterprise Manager session runner calls the run script to execute each test defined in the vsif. The runner does not pass vsif attributes directly to the agent (a simulator, for example) that executes the test. Instead, the runner exports certain attributes as environment variables, and the run script picks up these variables. For example, the run_mode attribute defined in the vsif above is exported as BRUN_RUN_MODE. The following lines from a run script pick up the value “batch” specified by the sample vsif above and set the invocation options of Incisive Simulator accordingly: if [ -n $BRUN_RUN_MODE ]; then case `echo $BRUN_RUN_MODE` in ... batch_debug) # run batch post_run_options ="-exit" ;;
  • 13. Enterprise Manager Getting Started 1-7 Using Enterprise Manager Regression Analysis and Management with Runner Integration © 2011 Cadence Design Systems, Inc. All rights reserved worldwide. ... irun ... $post_run_options ... 3. When each run completes, the runner calls the scan script to extract attributes and failure information from the log file and append it to a Verification Session Output File (vsof). As with the vsif file, for each test and for the session itself, various attributes are defined in the vsof, some copied from the vsif and others extracted from the log file. For example: session_output ifv_session.me.08_09_07_19_01_35_8411 { session_dir: "/home/me/ifv_session.me.08_09_07_19_01_35_8411"; runs_in_session : 2; session_start_time : 1220828496; ... }; run 1 { full_title: "ifv_session/ifv_tests/ifv_test1"; seed: "random"; ... }; run 2 { full_title: "vm_ifv_session/irun_tests/irun_test1"; original_test_path: "___irun_tests___irun_test1"; seed: "random"; ... }; The scan script (vm_scan.pl) is invoked with filter files (.flt files). Enterprise Manager provides filter files for each agent. The filter files contain Perl filters that extract information from the messages output by each agent. For example, given the following message from Incisive Simulator in the log file: SVSEED set randomly from command line: 1056283255 The scan script, when invoked with the IUS filter file, adds the following attribute to the vsof: sv_seed: 1056283255; As another example, given the following message from Incisive Simulator in the log file: ncbits: *F,NOSNAP (/absolute/path/to/file/filename.txt,1024): Snapshot is missing The scan script, when invoked with the IUS filter file, adds the following failure information to the vsof: failure F0 { reference: <text>2@/home/my_login/work/fatal_log.log</text>; tool: ncbits; kind: NOSNAP;
  • 14. 1-8 Enterprise Manager Getting Started Using Enterprise Manager Regression Analysis and Management with Runner Integration © 2011 Cadence Design Systems, Inc. All rights reserved worldwide. severity: critical; description: <text>Snapshot is missing</text>; module: <text>line 1024 in /absolute/path/to/file/filename.txt</text>; }; 4. When the session completes, you open the vsof file in Enterprise Manager and use the vsof attributes to filter and group the session results. For example, one of Enterprise Manager’s predefined views is First Failures, which selects only the failed runs in a session and groups them according to the “description” attribute of the first failure with severity “critical” in the vsof. This allows you to easily see whether several runs failed because of the same error. For example, the figure below shows that 3 runs failed because of a mismatch between the expected write burst and the write burst that was actually collected. The vsof file also contains attributes that define the location of the coverage files, so these files are automatically loaded. 5. Once you have analyzed the failures, you can launch a rerun from Enterprise Manager. You can rerun the entire session or selected either using the same run mode (batch, interactive, batch_debug, or interactive_debug) or a different mode. You can also change other attributes of the run when you re-execute it. 6. Perform coverage analysis. To analyze coverage results using Enterprise Manager, you can load one or more collected vsofs, select all the runs of interest and open Enterprise Manager’s Verification Plan (vPlan) Tree window. Figure 1-3 shows a sample vPlan window displaying the results from scenarios (testcases), checkers (assertions), functional coverage and code coverage. Note Analysis of sessions created outside of Enterprise Manager together with those created by Enterprise Manager’s internal runner is supported.
  • 15. Enterprise Manager Getting Started 1-9 Using Enterprise Manager Next Steps © 2011 Cadence Design Systems, Inc. All rights reserved worldwide. Figure 1-4 Sample Verification Plan Tree Window 1.3 Next Steps The rest of this manual takes you step-by-step through the process of setting up your environment to run with Enterprise Manager, launching the first session, and analyzing results. If you plan to use your own test harness and use Enterprise Manager for regression analysis only read the following chapters: ● Chapter 3 “Regression Analysis without Runner Integration” ● Chapter 6 “Analyzing Failures and Launching Reruns” ● Chapter 7 “Checks and Coverage and Contribution Metrics” Note If someone has already integrated Enterprise Manager’s runner into your environment, read the following chapters: ● Chapter 5 “Launching a Session”
  • 16. 1-10 Enterprise Manager Getting Started Using Enterprise Manager Next Steps © 2011 Cadence Design Systems, Inc. All rights reserved worldwide. ● Chapter 6 “Analyzing Failures and Launching Reruns” ● Chapter 7 “Checks and Coverage and Contribution Metrics” If you need to integrate Enterprise Manager’s runner into your environment, read the following chapters: ● Chapter 4 “Creating a Baseline Environment” ● Chapter 5 “Launching a Session” ● Chapter 6 “Analyzing Failures and Launching Reruns” ● Chapter 7 “Checks and Coverage and Contribution Metrics” For More Information This manual does not cover project planning. For more information on this important task, see Getting Started with Enterprise Planner or Enterprise Manager Verification Planning. This manual does not cover every aspect of some basic tasks. It also does not cover the less common tasks, such as automating or customizing the regression environment. For information, see the following manuals: ● Enterprise Manager Analyzing Failures ● Enterprise Manager Analyzing Metrics ● Enterprise Manager Managing Regressions. This manual does not cover the tasks that require an Enterprise Manager license. For information on these tasks, see “Features Requiring an enterprise_manager License” on page 3-1 in Enterprise Manager Analyzing Metrics.
  • 17. Enterprise Manager Getting Started 2-1 © 2011 Cadence Design Systems, Inc. All rights reserved worldwide. 2 Managing vManager Memory The vManager Memory Manager periodically frees up space in memory by automatically recycling unusable data. Any object (struct, list, string, or long integer) that is not used by the vManager scheduler is considered unusable and defined by vManager as garbage. The recycling process is called Garbage Collection (GC). By default, garbage collection is automated to optimize runtime performance and memory usage for the machines on which vManager is running. This automation is controlled by a set of config memory options that are described in "“Guidelines for Using vManager Memory Efficiently” on page 2-4. Note Garbage collection returns freed memory to vManager, not to the operating system, so from the system perspective, the memory is still part of the vManager process. This chapter contains the following sections: ● “Automatic Settings for Optimal Garbage Collection” on page 2-1 ● “Guidelines for Using vManager Memory Efficiently” on page 2-4 2.1 Automatic Settings for Optimal Garbage Collection By default, garbage collection is automated to optimize runtime performance and memory usage for the machines on which vManager is running. This automation is controlled by the set of config memory options described in this section: ● “Automating Garbage Collection” on page 2-2 ● “Setting the Optimal Process Size for Automated GC” on page 2-2 ● “On-the-Fly Garbage Collection in Automated GC” on page 2-2 ● “Printing the Automated GC Settings” on page 2-3 ● “Interaction with Other Memory Configuration Options” on page 2-3
  • 18. 2-2 Enterprise Manager Getting Started Managing vManager Memory Automating Garbage Collection © 2011 Cadence Design Systems, Inc. All rights reserved worldwide. 2.1.1 Automating Garbage Collection By default, GC is automated. To disable automated GC: ● Set the -automatic_gc_settings configuration option to NONE: config mem -automatic_gc_settings=NONE To re-enable automated GC: ● Set the -automatic_gc_settings configuration option to STANDARD: config mem -automatic_gc_settings=STANDARD During automated GC, vManager approximates the maximum memory footprint (the optimal process size) to be used in the current run. This approximation is relative to the physical memory installed on the local machine. If vManager fails to retrieve the machine memory, the optimal process size defaults to 2GB. vManager continues to adjust the memory settings throughout the session, reassigning new values as the memory footprint and memory consumption change. 2.1.2 Setting the Optimal Process Size for Automated GC If you know the optimal process size for your machine, you can set it for vManager with the -optimal_process_size option. When you set this option, vManager automatically sets automatic_gc_settings to STANDARD (unless it is set already). To set the optimal process size: ● Set the optimal process size in bytes with the -optimal_process_size configuration option: config mem -optimal_process_size=2048M Notes ● On 32-bit machines, the optimal process size cannot exceed 3GB. If you enter a number larger than 3GB, vManager truncates it to 3GB. ● On AIX machines, vManager always sets the optimal process size to 2GB, regardless of the setting for -optimal_process_size. 2.1.3 On-the-Fly Garbage Collection in Automated GC The config memory -max_size flag triggers on-the-fly garbage collection when automation is turned off. However, when automated GC is turned on, vManager ignores the -max_size flag. Instead, vManager triggers on-the-fly GC for efficiency in the following situations:
  • 19. Enterprise Manager Getting Started 2-3 Managing vManager Memory Printing the Automated GC Settings © 2011 Cadence Design Systems, Inc. All rights reserved worldwide. ● If memory consumption is moderate relative to optimal_process_size, on-the-fly GC is called when vManager allocates unusually large amounts of memory (when regular GC cannot be invoked). Note In most cases, regular GC is used. ● If memory consumption is high and regular GC cannot be used efficiently, on-the-fly GC is called when amount of memory used by vManager is close to optimal_process_size. If on-the-fly GC is unable to free enough memory, disk-based GC is used. 2.1.4 Printing the Automated GC Settings To print the settings for automated GC: ● Set the -notify_gc_settings configuration option to TRUE. config mem -notify_gc_settings=TRUE Note The -notify_gc_settings option applies only if automated GC is enabled. 2.1.5 Interaction with Other Memory Configuration Options When GC is automated, vManager manages how memory is allocated for GC. If you subsequently assign a value to any of the following config memory options, vManager automatically turns off automated GC (that is, it sets -automatic_gc_settings to NONE): Whenever you explicitly set anyone of the following memory parameters: ● -max_size ● -absolute_max_size ● -gc_threshold ● -gc_increment You will get the following warning indicating that the Auto GC is disabled. *** Warning: WARN_AUTO_GC_OFF: Once max_size is set explicitly, Specman cannot calculate garbage collection settings automatically; setting automatic_gc_settings to NONE It is not recommended to mix Auto GC memory settings with any of these parameters. Notes ● All other config memory options are valid during automatic GC configuration. ● It is highly recommended for the user to NOT change the auto gc setting.
  • 20. 2-4 Enterprise Manager Getting Started Managing vManager Memory Guidelines for Using vManager Memory Efficiently © 2011 Cadence Design Systems, Inc. All rights reserved worldwide. 2.2 Guidelines for Using vManager Memory Efficiently To ensure that vManager uses memory efficiently, follow these steps: 1. If you are running without automated GC configuration (that is, if automatic_gc_settings=NONE), control how frequently the memory manager performs garbage collection. ● To control the frequency of regular GC, use the -gc_threshold and -gc_increment memory configuration options. ● To control the frequency of on-the-fly GC, use the -max_size memory configuration option. 2. Ensure that disk-based GC is enabled and that sufficient disk space is available. Disk-based GC is enabled by default. You can disable it only by setting config memory -disable_disk_based_gc=TRUE. To ensure that sufficient disk space is available, set vManager_TEMP_DIR to an area with free space equivalent to the amount of space used by your computer's virtual memory. For more information on how to set these memory configuration values and what their ranges are, see configure memory in the Specman Command Reference.
  • 21. Enterprise Manager Getting Started 3-1 © 2011 Cadence Design Systems, Inc. All rights reserved worldwide. 3 Regression Analysis without Runner Integration This chapter describes how to perform failure and coverage analysis if the runs were invoked not with Enterprise Manager’s internal runner but outside of Enterprise Manager. Note Regression analysis without runner integration is supported for Incisive Enterprise Simulator XL, with or without Specman, and requires either a Desktop Manager or an Enterprise Manager license. This feature is not currently supported for IFV. The following sections describe in detail how to enable this capability: ● “Setting Up the Run Execution Environment” on page 3-1 ● “Triggering vsof Creation” on page 3-2 ● “Controlling the Single Run vsof content” on page 3-4 ● “Using Local Disk Execution for Single Runs” on page 3-7 ● “Re-invoking Runs Executed Outside of Enterprise Manager” on page 3-8 For an overview of this capability, see “How Enterprise Manager Can Work For You” on page 1-2. 3.1 Setting Up the Run Execution Environment To set up the run execution environment: 1. If necessary, install the EMGR release. This step may already have been performed as part of an Incisive installation. If so, under the Incisive install directory, you can see an EMGR install directory. 2. Add the Enterprise Manager environment to the run execution environment by adding INCISIV-install-dir/EMGRnn/bin to your PATH.
  • 22. 3-2 Enterprise Manager Getting Started Regression Analysis without Runner Integration Triggering vsof Creation © 2011 Cadence Design Systems, Inc. All rights reserved worldwide. For example, for csh: setenv PATH /cad/tools/INCISIV92/EMGR92/bin:${PATH} Note No Enterprise Manager license is checked out during run execution, so licensing setup is not required. 3.2 Triggering vsof Creation By default, Incisive Simulator and Specman do not create vsof files. If you explicitly trigger vsof creation, a separate file is created for each invocation of the tools. To trigger vsof creation, do one of the following: ● Set the VMANAGER_WRITE_METRICS variable. This variable and the optional VMANAGER_RUNS_DATA_DIR variable are described in Table 3-1. ● Use the -write_metrics invocation option shown in Table 3-2 for irun or ncsim. Specman accepts set_config(write_metrics, TRUE). While triggering the vsof creation, the following two operations are executed: ● Tool reports execution information which eventually will be written into the vsof ● Beforeexiting andwritingthevsof,logscanningusingvm_scan.plisinitiatedwiththerequiredfilters. Notes ● If vsof creation is triggered with the VMANAGER_WRITE_METRICS variable or the -write_metrics option, the coverage database format is quietly set to ucd and the coverage model format to ucm, the formats required for viewing results in Enterprise Manager. ● If simulation fails to start or to complete normally due to initialization problems, compilation problems or environment failures, no single-run vsof is created. These types of failures, including license checkout failures, HDL compilation or elaboration failures, malfunctioning disk mounts, and abnormal aborts, should be caught by the external runner or regression harness. Table 3-1 Write vsof Environment Variables Name Value Description VMANAGER_WRITE_METRICS ALL Triggers the specified tool to collect information and dump it into a single-run vsof file.
  • 23. Enterprise Manager Getting Started 3-3 Regression Analysis without Runner Integration Triggering vsof Creation © 2011 Cadence Design Systems, Inc. All rights reserved worldwide. VMANAGER_RUNS_DATA_DIR The path to a directory on a globally visible disk where all single-run vsofs are written. Setting this variable reduces the time spent searching a directory hierarchy for single-run vsofs. If this directory is not writable, the tool writes this information in the log file and exits immediately with exit status 1. By default the single-run vsof is created in the execution directory with a unique name constructed from tool identifiers. For example, ncsim generates vsofs named ncsim_unique_string.vsof. This prevents multiple runs from over-writing other vsofs. Note If irun executes both Specman and the simulator, it includes information from both tools in the vsof. If the simulator is not present, Specman generates vsofs named specman_unique_string.vsof. See “Using Local Disk Execution for Single Runs” on page 3-7 for a scenario where defining this env var is not recommended. Table 3-2 Write vsof Options Option Description -write_metrics Writes run data including metrics and failures into a single-run vsof. Note This option is supported for irun and ncsim. Specman accepts set_config(write_metrics, TRUE). Table 3-1 Write vsof Environment Variables Name Value Description
  • 24. 3-4 Enterprise Manager Getting Started Regression Analysis without Runner Integration Controlling the Single Run vsof content © 2011 Cadence Design Systems, Inc. All rights reserved worldwide. 3.3 Controlling the Single Run vsof content The Single Run vsof contains all execution artifacts such as seed, log file location and references to coverage information. In addition, it contains failures information which is automatically extracted from the log via scanning process. Below is the list of environment variables that enable user control over the content of the Single Run vsof file. Those variables have a corresponding vsif attributes with the same functionality. Name Value Description Corresponding vsif attribute RUN_ATTR_VERIFIC ATION_SCOPE The verification scope of the run Associate the run to a verification scope verification_scope RUN_ATTR_SCAN_SC RIPT User define scanning specifications Add additional scanning on top of the automatic scanning defined by the tool in use scan_script RUN_ATTR_AUTO_SC AN_ARGSV m_scan.pl arguments Pass arguments to the automatic scanning. One or more vm_scan.pl arguments can be provided. Those arguments will be appended to the end of the vm_scan.pl command auto_scan_args RUN_ATTR_FULL_TI TLE Full title, possibly containing "/" Provide a user defined title for the run. The provided title will be reflected in the scenario (test-case) coverage and also appear as the run's full_title value. full_title RUN_ATTR_LOG_FIL E Full pathname of the generated log In some cases, especially when using 3rd party tools, auto detection of log file is limited. Use this variable in order to manually specifying the log location. Log location is extremely important in order to enable log scanning. log_file
  • 25. Enterprise Manager Getting Started 3-5 Regression Analysis without Runner Integration Controlling the Single Run vsof content © 2011 Cadence Design Systems, Inc. All rights reserved worldwide. Usage Examples: ● RUN_ATTR_VERIFICATION_SCOPE ● Associate the run with MASTER verification scope setenv RUN_ATTR_VERIFICATION_SCOPE MASTER ● RUN_ATTR_SCAN_SCRIPT ● Scan log file using my.flt filter file setenv RUN_ATTR_SCAN_SCRIPT "vm_scan.pl my.flt" ● RUN_ATTR_AUTO_SCAN_ARGS ● Extend the possible number of extracted patterns setenv RUN_ATTR_AUTO_SCAN_ARGS "-maxpat 50" ● Specify the log file of a 3rd party tool setenv RUN_ATTR_AUTO_SCAN_ARGS "-log results/vcs.log" ● Disable particular scan filters which are defined in the tool filter (assuming disable.flt calls with the right arguments to remove_filter() ) setenv RUN_ATTR_AUTO_SCAN_ARGS "disable.flt" ● Disable automatic scanning and use the user scanning specification only (disabling the automatic scanning should be avoided, unless facing a limitation) setenv RUN_ATTR_SCAN_SCRIPT "vm_scan.pl ius.flt my.flt" setenv RUN_ATTR_AUTO_SCAN_ARGS "-disable" Note It is strongly recommended not to disable the automatic scanning in order to avoid false positive. Instead consider to fine tune the automatic scanning using RUN_ATTR_AUTO_SCAN_ARGS. For example, you can disable a specific filter by removing it from the automatic filter files in the following way: RUN_ATTR_AUTO_SCAN_ARGS=removeWarningns.flt Where removeWarnings.flt will contain statements removing of warning messages: remove_filter("ius_warning1") remove_filter("ius_warning2") ● "RUN_ATTR_FULL_TITLE RUN_ATTR_RUN_SCR IPT Rerun run script Specifying a run script to be used when trying to rerun the test via Enterprise Manager run_script Name Value Description Corresponding vsif attribute
  • 26. 3-6 Enterprise Manager Getting Started Regression Analysis without Runner Integration Collecting Single-Run vsofs into a Collected vsof © 2011 Cadence Design Systems, Inc. All rights reserved worldwide. ● Provide the current working directory as the full title of the run setenv RUN_ATTR_FULL_TITLE `pwd` ● Explicitly define the run full title to be /master/complete/long setenv RUN_ATTR_FULL_TITLE /master/complete/long ● "RUN_ATTR_LOG_FILE ● Specify a 3rd party tool log file for scanning setenv RUN_ATTR_LOG_FILE `pwd`/results/vcs.log ● "RUN_ATTR_RUN_SCRIPT ● Specify a runme.sh script with seed and interactive options setenv RUN_ATTR_RUN_SCRIPT '/tools/scripts/runme.sh -seed $ATTR(seed) -interactive' 3.4 Collecting Single-Run vsofs into a Collected vsof Collection allows you to: ● Perform analysis of multiple runs as if they had been executed as a single session using Enterprise Manager’s internal runner. ● Assign run attribute values, such as verification scope or a user-defined scan script, to a set of runs. To collect single-run vsofs into a collected vsof in batch mode: ● Invoke Enterprise Manager with the collect_runs command. emanager -b -c [-desktop] "collect_runs options" Notes ● You can invoke Enterprise Manager to collect the results either while the runs are executing or after they have completed. ● You can choose which tests to collect in the collected vsof. It is OK to collect single-run vsofs created by different tools. ● When you do not use irun but invoke the HDL compiler and elaborator as separate steps in a multi-step process, warnings and informational messages are not collected because they are in different log files that are not scanned. As a result, these messages are not visible during regression analysis.
  • 27. Enterprise Manager Getting Started 3-7 Regression Analysis without Runner Integration Using Local Disk Execution for Single Runs © 2011 Cadence Design Systems, Inc. All rights reserved worldwide. Example 1 Creating a Collected vsof and Loading into Enterprise Manager The following command creates a collected vsof called nightly090605.vsof in the current working directory and adds any single-run vsofs that it finds in the /proj/regs/nightly directory hierarchy. The single-run vsofs are removed after they are added to the collected vsof. % emanager -b -c [-desktop] "collect_runs -vsof nightly090605.vsof -dir /proj/regs/nightly -remove" Example 2 Appending to an Existing Collected vsof The following command appends any single-run vsofs that it finds in the /proj/regs/nightly directory hierarchy to nightly090605.vsof. % emanager -b -c [-desktop] "collect_runs -vsof nightly090605.vsof -dir /proj/regs/nightly -append -remove The following command invokes Enterprise Manager interactively, loads the collected vsof and opens the First Failures views: % emanager [-desktop] -p "analyze_runs -vsof nightly090605.vsof -runs_view First_Failures" If the append process or the runs themselves have not completed when you initially load the collected vsof, you can click the Refresh button in the Runs window, or you can wait for the auto-refresh function to execute. Note The user should not collect a 9.2 regression result with 10.2 as this may bring up unexpected results. See Also ● collect_runs on page A-11 in Enterprise Manager Managing Regressions 3.5 Using Local Disk Execution for Single Runs You can use local disk execution in order to boost performance. Once the execution is completed, move the cov_work directory along with log files and any other execution artifact to a global storage using any UNIX command. At this point, the results can be analyzed and the run data can be collected. See “Session Relocation” on page 2-30 in the Enterprise Manager Managing Regressions for more information.
  • 28. 3-8 Enterprise Manager Getting Started Regression Analysis without Runner Integration Re-invoking Runs Executed Outside of Enterprise Manager © 2011 Cadence Design Systems, Inc. All rights reserved worldwide. 3.6 Re-invoking Runs Executed Outside of Enterprise Manager It is possible to use Enterprise Manager’s internal runner (accessed by the Rerun button in the Runs window) to re-invoke a run that was previously executed by an external runner. However, because no DRM is integrated, you can only invoke a single run on the localhost; you cannot launch multiple runs at the same time or run them on remote machines. To re-execute a run for debugging, do one of the following: ● Set the run_script attribute with -attribute option of the collect_runs command. For example: % emanager -c [-desktop] 'collect_runs -vsof a.vsof -dir /proj/regs/nightly/UART -attribute "run_script=debug.sh -seed $ATTR(seed) -dir $ATTR(run_dir)"' Note The $ATTR() and $DIR() vsif directives can be used in this context since their interpretation is performed as part of the rerun operation (and not during collect operation). ● Define a rerun scheme that computes the run_script attribute for each and every run. 3.7 Read Runs The Read runs feature enables reading the ucd/ucm files directly into vManager if they are in the 10.2 run directory format. The user can then open a vPlan window and analyze his coverage data. The Read runs feature can be run from the GUI, as well as through a batch command. This is explained in the following sections: 3.7.1 Running Read Runs command through GUI To open the read runs dialog: 1. In the Enterprise Manager main window, select File – Read runs.
  • 29. Enterprise Manager Getting Started 3-9 Regression Analysis without Runner Integration Running Read Runs command through GUI © 2011 Cadence Design Systems, Inc. All rights reserved worldwide. 2. This will open the read runs dialog as shown below:
  • 30. 3-10 Enterprise Manager Getting Started Regression Analysis without Runner Integration Running Read Runs command through GUI © 2011 Cadence Design Systems, Inc. All rights reserved worldwide. 3. Set the options in this dialog-box as explained below: a. Search directory - This is a mandatory field that: ● Searches recursively from this folder for run directories with coverage and/or single run vsofs. ● Stops the search at a specific depth (default option set at 6) If this field is unchecked, it indicates that the search will not stop unless it is complete. If this field is checked, you need to specify the depth of the search. b. Collect - This field collects all runs or selected runs as per the pattern specified by the user. The options are: ● All runs - This is the default selection, and it collects all runs. ● Selectedruns:Thisoptioncollectsonlythoserunsthatmatchthespecifiedpattern.Forspecifying the pattern:
  • 31. Enterprise Manager Getting Started 3-11 Regression Analysis without Runner Integration Running Read Runs command through GUI © 2011 Cadence Design Systems, Inc. All rights reserved worldwide. You can use wildcards or regular expressions. To find all run directories with my_run prefix use one of the following: /my_run/ *my_run* my_run* c. Target vsof file - This field gives you the option to either use the temporary vsof location, or to specify where you want to create the vsof. The default selection is to use the temporary vsof location, which will not be saved across invocations. ● Create vsof If this field is unchecked, it indicates that a vsof will be created at the temporary location If this field is checked, you need to specify the location where the vsof should be created. ● Overwrite existing file If this field is unchecked and if a vsof already exists at that location, a yes/no dialog-box will appear on your screen seeking your permission to overwrite the existing vsof file. If this field is checked and if a vsof file already exists, it will be over-written without seeking the user's permission. d. Press Cancel to close the dialog without doing a search. e. Press Ok to close the dialog and start the search. The results of Read Run is a vsof that contains all the collected runs as shown in the image below:
  • 32. 3-12 Enterprise Manager Getting Started Regression Analysis without Runner Integration Running Read Runs command through BATCH © 2011 Cadence Design Systems, Inc. All rights reserved worldwide. 3.7.2 Running Read Runs command through BATCH This section contains: ● “collect_runs (command)” on page 3-12 ● “collect_runs (backward compatibility changes)” on page 3-13 3.7.2.1 collect_runs (command) When you start a search using the Read Runs feature from the GUI interface, the matching batch command is printed to the console. coll[ect]_r[uns] [-vsof vsof-pathname] -dir dir1 [-dir dir2 …] [-remove] [-append | -overwrite] [-attribute attribute-name:value][-attribute attribute-name:value …] [-merge] [-log_only log-pattern] [-refine refine-pattern] [-depth depth-value]
  • 33. Enterprise Manager Getting Started 3-13 Regression Analysis without Runner Integration Running Read Runs command through BATCH © 2011 Cadence Design Systems, Inc. All rights reserved worldwide. The Read Runs batch command is an existing vManager 9.2 batch command called collect_runs that has been extended to collect run directories (in vManager 9.2, collect_runs collected only single run vsof files). Run directories can include coverage data ucd/ucm files.To read run directories that have ucd/ucm files, the ucd/ucm files must be in the 10.2 run directory format as per the following rules: ● ucd files must be in the following format (engine_checksum1_checksum2.ucd) ● ucm files must be in the following format (engine_checksum1_checksum2.ucm) ● Each ucd file must have a matching ucm file in the run directory or the parent directory (several ucd files can share the same ucm file). 3.7.2.2 collect_runs (backward compatibility changes) The following behavioral changes are a result of enhancing the collect_runs batch command to collect run directories in 10.2 format (and not just single run vsof files). The use cases are based on the run directory content. Use case #1: Run directory with only ucd/ucm files (and no single run vsof file) Result of applying collect_runs: ● A new run will be created, and all valid ucd/ucm files will be added to this run. Warnings will be added to the run for ucd/ucm files that are not in the supported format. ● As a result of increasing the number of runs and adding coverage data to the new run, the coverage results might change as compared to results when applying collect_runs in vManager 9.2 on the same directory (as collect_runs in vManager 9.2 did not collect directories with only ucd/ucm files). Use case #2: Run directory has both single run vsof files and ucd/ucm files ● If multiple single run vsof files are found in the same run directory alongside valid ucd/ucm files, a single run vsof will be created that holds the merged result of all the single run vsof files. ● Applying collect_runs in vManager 9.2 on the same directory will result in one run created for each single run vsof file. Hence 9.2 collect might result with more runs than 10.2 collect. ● Any valid ucd/ucm files in the run directory that do not appear in the single run vsof will be added to the run. ● If collect did not succeed in reading any single run vsof file, but there are valid ucd/ucm files, the run directory will be collected the same as in use case#1: "Run directory with only ucd/ucm files (and no vsof file).
  • 34. 3-14 Enterprise Manager Getting Started Regression Analysis without Runner Integration Running Read Runs command through BATCH © 2011 Cadence Design Systems, Inc. All rights reserved worldwide. The following scenarios will give the same results as if applying collect_runs in vManager 9.2 (no behavioral changes): ● If there are only ucd/ucm files in the directory and none are valid (not in the 10.2 supported format), this directory will not be collected. ● If the run directory includes only single run vsof files (no valid ucd/ucm files), a run will be created for each single run vsof file. ● If the run directory has one single run vsof file and all the ucd/ucm files in that directory already appear in the vsof file, the single run vsof file will be collected without changes. See Also ● collect_runs on page A-11 in Enterprise Manager Managing Regressions
  • 35. Enterprise Manager Getting Started 4-1 © 2011 Cadence Design Systems, Inc. All rights reserved worldwide. 4 Creating a Baseline Environment This chapter explains what you need to do to get the first tests running with Enterprise Manager.Once you can analyze the first results, you will have a better sense of how you want to customize and refine the environment further. The tasks required to set up a baseline environment include: ● “Setting Up the Project Environment” on page 4-1 ● “Adapting a Run Script for Enterprise Manager” on page 4-2 ● “Using the Scan Script and the Predefined Filter Files” on page 4-17 4.1 Setting Up the Project Environment If your project environment depends on the use of relative paths, you must change those paths to use environment variables. For example, if you have a project directory similar to the one shown in Figure 4-1, it is likely that the fifo.f files in the “ius” and “ifv” directories load the fifo.v file in the “rtl” directory using the relative path “../rtl/fifo.v”. If this is the case, you need to define environment variables, such as: IFV_DIR /proj/ifv IUS_DIR /proj/ius RTL_DIR /proj/rtl Also, you must change the fifo.f files to load the fifo.v file with the environment variable. For example: $RTL_DIR/fifo.v
  • 36. 4-2 Enterprise Manager Getting Started Creating a Baseline Environment Adapting a Run Script for Enterprise Manager © 2011 Cadence Design Systems, Inc. All rights reserved worldwide. Figure 4-1 Sample Project Directory 4.2 Adapting a Run Script for Enterprise Manager A run script can be as simple as a single command invoking a verification agent, such as a simulator. For example, the following vsif code invokes IES for a single run called “first_test” with a specified snapshot, seed, and list of top files. test first_test { run_script: "irun -R -nclibdirpath $DIR(session) $BRUN_SV_SEED $BRUN_TOP_FILES"; ... }; However, specifying an actual script rather than a single invocation command as in the following vsif code provides you with much more flexibility: group first_tests { run_script: $ENV(MY_SCRIPTS)/ies_run.sh; ... }; A run script modified to work with Enterprise Manager usually does the following: ● Sets up the run environment ● Defines run variables ● Collects coverage and check data in Unicov Format ● Defines run modes ● Builds a simulation snapshot (or perform other pre-run tasks) ● Invokes a run This section takes you step-by-step through the process of modifying a run script to work with Enterprise Manager. rtl ifv ius proj fifo.f fifo.f fifo.v
  • 37. Enterprise Manager Getting Started 4-3 Creating a Baseline Environment Setting Up the Run Environment © 2011 Cadence Design Systems, Inc. All rights reserved worldwide. Notes ● Examples are shown in this section for Incisive Simulator, IFV and Specman. If your verification environment uses more than one of these tools, you need to look at multiple examples. ● The examples in this section assume that you have a script that is capable of launching a single verification run from the shell (without invoking Enterprise Manager). Thus, the examples are not complete; they only show the kind of modifications you must make so that the script works with Enterprise Manager. See Also ● “Setting Up the Run Environment” on page 4-3 ● “Defining Run Variables” on page 4-4 ● “Collecting Coverage and Check Data in Unicov Format” on page 4-7 ● “Defining Run Modes” on page 4-9 ● “Building a Simulation Snapshot” on page 4-11 ● “Invoking a Run” on page 4-12 ● “Sample Single Run Script for Incisive Simulator” on page 4-13 ● “Sample Single Run Script for IFV” on page 4-14 4.2.1 Setting Up the Run Environment It is recommended to set environment variables and paths in a .sve file instead of in a run script. If you specify the name of the sve file in the vsif using the sve_name group or test attribute, Enterprise Manager sources this file before every run. This capability lets you set up different variables and paths for different runs or groups of runs. Note The run environment can be different from the Enterprise Manager environment, because each run is a sub-process of the emanager process. The sve file affects only the run env. For example, if you want to be able to define a single session where some runs are performed with Incisive Simulator and others are performed with IFV, you can create an IES sve file and an IFV sve file. You then specify the appropriate sve file for each test or each group of tests. group ius_tests { sve_name : $ENV(ABV_VM_UTIL)/vm/ius_setup.sve; ... }; group ifv_tests { sve_name : $ENV(ABV_VM_UTIL)/vm/ifv_setup.sve; ...
  • 38. 4-4 Enterprise Manager Getting Started Creating a Baseline Environment Defining Run Variables © 2011 Cadence Design Systems, Inc. All rights reserved worldwide. }; Notes ● Do not use relative paths when setting up the run environment. ● Only certain versions of IFV are compatible with IES. To determine which version of IES is compatible with IFV perform the following <ifv_install_dir>/bin/ncverilog -version ● You cannot set up both IES and IFV in the same sve file because whichever agent you are using must be first in the $PATH variable. Incisive Simulator: Sample sve File #!/usr/bin/sh IUS_HOME=/cad/INCISIV92/IUS92;export IUS_HOME LD_LIBRARY_PATH=$IUS_HOME/tools/lib:$IUS_HOME/tools/inca/lib:$LD_LIBRARY_ PATH;export LD_LIBRARY_PATH PATH=$IUS_HOME/tools/bin/:$PATH;export PATH PATH=/cad/INCISIV92/EMGR92/bin:$PATH;export PATH IFV: Sample sve File #!/usr/bin/sh IFV_HOME=/cad/INCISIV92/IFV92;export IFV_HOME LD_LIBRARY_PATH=$IFV_HOME/tools/lib:$IFV_HOME/tools/inca/lib:$LD_LIBRARY_ PATH;export LD_LIBRARY_PATH PATH=$IFV_HOME/tools/bin/:$PATH;export PATH PATH=/cad/INCISIV92/EMGR92/bin:$PATH;export PATH Specman: Sample sve File #!/usr/bin/sh PATH=/cad/INCISIV92/SPMN92/tools/bin:$PATH;export PATH PATH=/cad/INCISIV92/EMGR92/bin:$PATH;export PATH See Also ● “Creating an SVE File” on page 2-17 in Enterprise Manager Managing Regressions ● “Setting Up the Launch Environment” on page 2-2 in Enterprise Manager Managing Regressions 4.2.2 Defining Run Variables To enable full control from the vsif over invocation options and input files, you can do one or both of the following:
  • 39. Enterprise Manager Getting Started 4-5 Creating a Baseline Environment Defining Run Variables © 2011 Cadence Design Systems, Inc. All rights reserved worldwide. ● Use Enterprise Manager’s predefined vsif group/test attributes ● Create user-defined vsif group/test attributes that are exported as environment variables and copied to the vsof file. Then you can pick up the variable setting at invocation. For example, if you specify the source files for the DUT in the vsif using the predefined hdl_files attribute: test my_test { hdl_files: "-f $ENV(DUT_SRC)/top.f"; ... }; Then you can pick up the name of the DUT source files in the run script and pass it to irun as follows: irun $BRUN_HDL_FILES ... The examples in this manual assume that you have created user-defined attributes as follows: ● tcl_files — specifies a list of files to be passed to the simulator or IFV ● ifv_tcl — specifies any tcl commands, such as pin constraints, to be executed prior to the prove command ● cmd_args — specifies a list of command line arguments to be passed to the simulator or IFV ● cmd_files — specifies the command files to be passed to the simulator or IFV ● e_files — specifies the e files to be passed to Specman The examples in this manual also use the following predefined vsif attributes: ● code_coverage ● gui_mode ● hdl_files ● ifv_assertions ● ifv_effort ● ifv_engine ● ifv_halo ● run_mode ● sv_seed ● top_files ● verbosity ● waveform For more information on these predefined attributes, see “vsif File Structure and Attributes” on page C-5 in Enterprise Manager Managing Regressions.
  • 40. 4-6 Enterprise Manager Getting Started Creating a Baseline Environment Defining Run Variables © 2011 Cadence Design Systems, Inc. All rights reserved worldwide. User-defined attribute definitions must be stored in an attributes definition file, vm_attributes.csv. Enterprise Manager reads all vm_attributes.csv files in: 1. Any directory defined in $VMANAGER_PATH. VMANAGER_PATH contains a colon-separated list of absolute pathnames. For example: setenv VMANAGER_PATH /proj/attributes:/my-login/proj/attributes 2. $VMANAGER_CONFIG_HOME/.vmanager. Note If VMANAGER_CONFIG_HOME is not defined, Enterprise Manager looks for this file in the .vmanager directory under your HOME directory (~/.vmanager). 3. Any directory defined in $SPECMAN_PATH. SPECMAN_PATH contains a colon-separated list of absolute pathnames. If an attribute with the same name is defined twice (within the same file or in two files), the second definition over-rides the first one. To create these or other user-defined vsif group/test attributes: 1. Copy the INCISIV-install-dir/EMGRnn/vmanager/vm_lib/vm_attributes/vm_attributes.csv file to the desired location. 2. Open vm_attributes.csv with a spreadsheet editor such as OpenOffice.org Calc. 3. In the first empty row, in the NAME column, enter a unique name for the attribute you want to create or modify. Only alphanumeric characters and the underscore character (_) are allowed in attribute names. 4. In the VALID_CONTAINER_NAMES column, enter the types of containers where the attribute is valid. The following list allows the attributes to appear in the test and group containers in the vsif and in the run container of a vsof: test;group;run; Note The list must end with a semi-colon. 5. Scan across the column headings and find COPY_TO_VSOF and IS_ENV_ATTRIBUTE. The COPY_TO_VSOF column controls whether the setting specified in the vsif is copied as is to the vsof file (and thus can be displayed during the analysis of the session). The IS_ENV_ATTRIBUTE column specifies whether the setting is exported as an environment variable (and thus can be picked up by a script such as the run script.)
  • 41. Enterprise Manager Getting Started 4-7 Creating a Baseline Environment Collecting Coverage and Check Data in Unicov Format © 2011 Cadence Design Systems, Inc. All rights reserved worldwide. For a complete description of all the columns in the attributes file, see “Creating User-Defined Attributes” on page 2-105 in Enterprise Manager Managing Regressions. 6. Save the file in CSV format. See Also ● “Defining Sessions (Vsif Files)” on page 2-19 in Enterprise Manager Managing Regressions 4.2.3 Collecting Coverage and Check Data in Unicov Format In order to view coverage and check data collected by various agents in Enterprise Manager, you must collect the data in Unicov format during every run. There are two Unicov format files: ● A Unicov data file has a .ucd extension and can contain functional coverage, code coverage, and/or check data. ● A Unicov coverage/check model file has a .ucm extension and contains a model of all the checks and coverage points in the DUT that are monitored during the run. In some cases, you must explicitly turn on coverage/check collection: ● You must explicitly turn on IES code coverage data collection. ● You must explicitly turn on IFV coverage and check data collection. ● You must explicitly turn on Specman check and expect data collection. ● You must explicitly turn on Specman code coverage data collection. ● You do not need to explicitly turn on IES or Specman functional coverage data collection. For every run where coverage/check collection is enabled, each agent writes its own ucd file. The data from these files is merged and projected onto the coverage model. Using a checksum mechanism, IES, IFV and Specman each write a coverage model for a run unless a model with the same checksum already exists. If you prefer, you can manually control the coverage model writing or the location of where the coverage model is written. For more information on this topic, see “Writing the Coverage Model” on page 2-47 in Enterprise Manager Managing Regressions. IES To require the simulator to collect code coverage: 1. Define the vsif code_coverage attribute with the following options: -coverage coverage-types or -covfile cover-config-file
  • 42. 4-8 Enterprise Manager Getting Started Creating a Baseline Environment Collecting Coverage and Check Data in Unicov Format © 2011 Cadence Design Systems, Inc. All rights reserved worldwide. -covdut DUT-module The -coverage or -covfile options specify the coverage to be instrumented and scored. The -covdut option specifies the scope of the instrumentation. Note For more information on these options, see the Incisive Comprehensive Coverage user documentation for Incisive Simulator. 2. Add the $BRUN_CODE_COVERAGE variable to the irun or ncelab invocation line. IFV To require IFV to collect coverage and check data: ● Add one of the following option to the ifv invocation line: +coverage—enables coverage instrumentation +waveform_coverage—enables coverage instrumentation for waveform generation Note When you invoke IFV with +coverage, witness_check defaults to auto. If you have set witness_check to off in the tcl file, then that setting is honored. However, if you have set it to trace or trigger that setting is ignored and it defaults to auto. Specman To require Specman to collect check and expect data: ● Add the following option to the irun or specman invocation line: -snset "set_config(cover, collect_checks_expects, TRUE)" To require Specman to collect block code coverage data: ● Add one of the following options to the irun or specman invocation line: -snset "set_config(cover, block_coverage_mode, on)" -snset "set_config(cover, block_coverage_mode, per_type)" Notes ● The collect_checks_expects option must be set before any e module is loaded or compiled. ● When Specman runs under Enterprise Manager, the default database format is ucd and the default coverage model format is ucm, the Unicov formats that Enterprise Manager requires. ● Do not use the Specman on_interactive coverage collection mode. If you use this mode, Specman forces the database format to be an ecov file. Enterprise Manager can read this file, but there is a performance penalty. A warning notification is issued when this occurs. ● For more information on these options, see the Specman user documentation.
  • 43. Enterprise Manager Getting Started 4-9 Creating a Baseline Environment Defining Run Modes © 2011 Cadence Design Systems, Inc. All rights reserved worldwide. 4.2.4 Defining Run Modes The Enterprise Manager test runner exports the vsif run_mode attribute as an environment variable, and you must enhance the run script to define invocation options for the four predefined values: ● batch ● interactive ● batch_debug ● interactive_debug Note For reruns, there is an additional mode, as_is, which means “as specified in the original vsif”. To allow users more control over invocation options for a particular run mode, you can pick up the environment variable settings of the following vsif attributes: ● gui_mode (BRUN_GUI_MODE) ● verbosity (BRUN_VERBOSITY) ● waveform (BRUN_WAVEFORM) Notes ● To see a complete list of vsif attributes that are exported as variables, refer to “Runner Environment Variables” on page 2-125 in Enterprise Manager Managing Regressions. ● It is possible to define additional run modes (run schemes). For more information, see “Creating a New Rerun Scheme” on page 2-112 in Enterprise Manager Managing Regressions. IES Run Modes The script picks up any parameters it needs from the vsif, and assigns them to variables that are then passed to irun. # Interpreting different Rerun Schemes pre_run_option="" post_run_option="-exit" if [ $BRUN_RUN_MODE != "" ]; then case `echo $BRUN_RUN_MODE` in interactive) # run interactive post_run_option=-gui $BRUN_GUI_MODE ;; interactive_debug) # run interactive and write waveforms pre_run_option= -linedebug $BRUN_VERBOSITY post_run_option=-gui $BRUN_GUI_MODE $BRUN_WAVEFORM ;;
  • 44. 4-10 Enterprise Manager Getting Started Creating a Baseline Environment Defining Run Modes © 2011 Cadence Design Systems, Inc. All rights reserved worldwide. batch) # run batch post_run_option="-exit" ;; batch_debug) # run batch and write waveforms pre_run_option= -linedebug $BRUN_VERBOSITY post_run_option= $BRUN_WAVEFORM "-exit" ;; *) # not supported echo "ERROR: BRUN_RUN_MODE '$BRUN_RUN_MODE' not supported by $0!" exit 1 esac fi IFV Run Modes run_option="+exit" if [ "$BRUN_RUN_MODE" != "" ]; then case `echo $BRUN_RUN_MODE` in batch) # run batch run_option="+coverage +exit" ;; batch_debug) # run batch run_option="+waveform_coverage +exit" ;; interactive) # run with GUI run_option="+coverage +gui" ;; interactive_debug) # run with GUI run_option="+waveform_coverage +gui" ;; *) # not supported echo "ERROR: BRUN_RUN_MODE '$BRUN_RUN_MODE' not supported by $0!" exit 1 esac fi Specman Run Modes case $BRUN_RUN_MODE in "interactive" | "interactive_debug" ) run_options="-nosncomp -gui" ;; "batch" | "batch_debug" ) /bin/echo "(Info) Running in batch, no GUI *and* SN-TB is compiled."
  • 45. Enterprise Manager Getting Started 4-11 Creating a Baseline Environment Building a Simulation Snapshot © 2011 Cadence Design Systems, Inc. All rights reserved worldwide. ;; *) echo Run-mode: "${mode}" not supported, exiting exit 1 esac 4.2.5 Building a Simulation Snapshot For tests that share common source files, it is more efficient to compile those source files once (create a snapshot), rather than compiling them in every run. To build a snapshot, you can use a pre-session script. The invocation of any run is delayed until the pre-session script completes. If the pre-session script fails, the runs are not executed. Note If you want to write the snapshot to the session directory, you can retrieve its location with the expression: $DIR(session) IES Snapshot Build These lines compile and elaborate the HDL code specified by $BRUN_HDL_FILES and instrument it with the coverage options described in $BRUN_CODE_COVERAGE. pre_session_script: <text> irun -c -nclibdirname $DIR(session) -f $BRUN_HDL_FILES $BRUN_CODE_COVERAGE </text>; IFV Snapshot Build These lines compile and elaborate the HDL code specified by $BRUN_HDL_FILES with coverage only (no debug). pre_session_script: <text> ifv -c +nclibdirname+$DIR(session) -f $BRUN_HDL_FILES +coverage </text>; Specman Snapshot Build These lines compile and elaborate the HDL and e code specified by $BRUN_HDL_FILES and $BRUN_E_FILES and instrument it with coverage options described in $BRUN_CODE_COVERAGE.
  • 46. 4-12 Enterprise Manager Getting Started Creating a Baseline Environment Invoking a Run © 2011 Cadence Design Systems, Inc. All rights reserved worldwide. pre_session_script: <text> irun -c -nclibdirpath $DIR(session) $BRUN_HDL_FILES $BRUN_E_FILES $BRUN_CODE_COVERAGE </text>; 4.2.6 Invoking a Run When invoking the run, you need to pass run variables and the options specified by the run mode. IES Execute Run This example invokes the simulator, using the snapshot created by the pre-session script and passing the SystemVerilog seed, the name of the SystemVerilog test file, and the run mode options. irun -R -nclibdirpath $DIR(session) $pre_run_option $BRUN_SV_SEED $BRUN_TOP_FILES $post_run_option IFV Execute Run This example invokes IFV, using the snapshot created by the pre-session script and passing the name of the test file and the run mode options. ifv -R +nclibdirpath+$DIR(session) $pre_run_option $BRUN_TOP_FILES +coverage $post_run_option Specman Execute Run This example invokes the simulator with Specman, using the snapshot created by the pre-session script and passing the SV and Specman seeds, the name of the e test file, and the run mode options. irun -R -nclibdirpath $DIR(session $pre_run_option $BRUN_SV_SEED $BRUN_SEED
  • 47. Enterprise Manager Getting Started 4-13 Creating a Baseline Environment Sample Single Run Script for Incisive Simulator © 2011 Cadence Design Systems, Inc. All rights reserved worldwide. $BRUN_TOP_FILES -snset "set_config(cover, collect_checks_expects, TRUE)" $post_run_option 4.2.7 Sample Single Run Script for Incisive Simulator #!/bin/sh echo RUNNING SCRIPT $0 ... # specify your debug options or tcl files in the debug option below debug_option="-linedebug" debug_option="$debug_option -input "@database -open waves -default; probe -create -all -depth all -memories -variables"" # Interpreting different ReRun Schemes pre_run_option="" post_run_option="-exit" if [ $BRUN_RUN_MODE != "" ]; then case `echo $BRUN_RUN_MODE` in interactive) # run interactive post_run_option="-gui" ;; interactive_debug) # run interactive and dump waveforms pre_run_option="$debug_option" post_run_option="-gui" ;; batch) # run batch post_run_option="-exit" ;; batch_debug) # run batch and dump waveforms pre_run_option="$debug_option" post_run_option="-exit" ;; *) # not supported echo "ERROR: BRUN_RUN_MODE '$BRUN_RUN_MODE' not supported by $0!" exit 1 esac fi # Unroll top files and add -f option before each f_option=""
  • 48. 4-14 Enterprise Manager Getting Started Creating a Baseline Environment Sample Single Run Script for IFV © 2011 Cadence Design Systems, Inc. All rights reserved worldwide. if [ "$BRUN_TOP_FILES" != "" ]; then for top_file in ${BRUN_TOP_FILES} do if [ -f "$top_file" ]; then f_option="$f_option -f $top_file" else echo "WARNING: top_file=$top_file does not exist, ignoring." fi done fi # Unroll cmd files and add -f option before each if [ "$BRUN_CMD_FILES" != "" ]; then for cmd_file in ${BRUN_CMD_FILES} do if [ -f "$cmd_file" ]; then f_option="$f_option -f $cmd_file" else echo "WARNING: cmd_file=$cmd_file does not exist, ignoring." fi done fi # user tcl files tcl_option="" if [ "$BRUN_TCL_FILES" != "" ]; then for tcl_file in ${BRUN_TCL_FILES} do if [ -f "$tcl_file" ]; then tcl_option="$tcl_option -input $tcl_file" else echo "WARNING: tcl_file=$tcl_file does not exist, ignoring." fi done fi cmd="irun ${pre_run_option} ${f_option} ${tcl_option} ${BRUN_CMD_ARGS} ${post_run_option}" echo "Running: $cmd" eval $cmd exit 0 4.2.8 Sample Single Run Script for IFV #!/bin/sh
  • 49. Enterprise Manager Getting Started 4-15 Creating a Baseline Environment Sample Single Run Script for IFV © 2011 Cadence Design Systems, Inc. All rights reserved worldwide. echo RUNNING SCRIPT $0 ... run_option="+exit" if [ "$BRUN_RUN_MODE" != "" ]; then case `echo $BRUN_RUN_MODE` in interactive|interactive_debug) # run with GUI run_option="+gui" ;; batch_debug|batch) # run batch run_option="+exit" ;; *) # not supported echo "ERROR: BRUN_RUN_MODE '$BRUN_RUN_MODE' not supported by $0!" exit 1 esac fi # Unroll top files and add -f option before each f_option="" if [ "$BRUN_TOP_FILES" != "" ]; then for top_file in ${BRUN_TOP_FILES} do if [ -f "$top_file" ]; then f_option="$f_option -f $top_file" else echo "WARNING: top_file=$top_file does not exist, ignoring." fi done fi # Unroll cmd files and add -f option before each if [ "$BRUN_CMD_FILES" != "" ]; then for cmd_file in ${BRUN_CMD_FILES} do if [ -f "$cmd_file" ]; then f_option="$f_option -f $cmd_file" else echo "WARNING: cmd_file=$cmd_file does not exist, ignoring." fi done fi # user tcl file tcl_option="" if [ "$BRUN_TCL_FILES" != "" ]; then for tcl_file in ${BRUN_TCL_FILES}
  • 50. 4-16 Enterprise Manager Getting Started Creating a Baseline Environment Sample Single Run Script for IFV © 2011 Cadence Design Systems, Inc. All rights reserved worldwide. do if [ -f "$tcl_file" ]; then tcl_option="$tcl_option +tcl+$tcl_file" else echo "WARNING: tcl_file=$tcl_file does not exist, ignoring." fi done fi # Create vm tcl run file vm_tcl="${BRUN_RUN_DIR}/vm_tcl.tcl" vm_tcl_option="" # Set engine from vsif if [ "$BRUN_IFV_ENGINE" != "" ]; then echo "define engine ${BRUN_IFV_ENGINE}" >> ${vm_tcl} fi # Set effort from vsif if [ "$BRUN_IFV_EFFORT" != "" ]; then echo "define effort ${BRUN_IFV_EFFORT}" >> ${vm_tcl} fi # Set halo from vsif if [ "$BRUN_IFV_HALO" != "" ]; then echo "define halo ${BRUN_IFV_HALO}" >> ${vm_tcl} fi # Always remove AFA - can be added back in below if desired but should be # separate run echo "catch {set afa_exist [string match *Total* [assertion -sum -auto] ]}" >> ${vm_tcl} echo "if {$afa_exist == 1} {" >> ${vm_tcl} echo " assertion -del -auto }" >> ${vm_tcl} # Set assertions from vsif and check to see if AFA was added by the user echo "set add_auto 0" >> ${vm_tcl} if [ "$BRUN_IFV_ASSERTIONS" != "" ]; then echo "set add_auto [string match -auto $env(BRUN_IFV_ASSERTIONS) ]" >> ${vm_tcl} echo "assertion -del -all" >> ${vm_tcl} echo "assertion -add ${BRUN_IFV_ASSERTIONS}" >> ${vm_tcl} fi # Check to see if AFA are forced by user - if so don't issue warning message echo "if {$afa_exist == 1 && $add_auto == 0} {" >> ${vm_tcl}
  • 51. Enterprise Manager Getting Started 4-17 Creating a Baseline Environment Using the Scan Script and the Predefined Filter Files © 2011 Cadence Design Systems, Inc. All rights reserved worldwide. echo " puts "ifv: *W,DELAFA: AFA checks are not supported in vManager/unicov and have been deleted from the run (AFA)"}" >> ${vm_tcl} # If not in a debug run mode, disable debug if [ "$BRUN_RUN_MODE" = "batch" ]; then echo "define debugmode off" >> ${vm_tcl} else echo "define debugmode on" >> ${vm_tcl} fi # Write out vplan echo "alias -unset prove" >> ${vm_tcl} echo "global env" >> ${vm_tcl} echo "source $env(ABV_VM_UTIL)/tcl/create_vplan.tcl" >> ${vm_tcl} echo "create_vplan" >> ${vm_tcl} if [ "$BRUN_RUN_MODE" != "interactive_debug" ]; then echo "prove" >> ${vm_tcl} fi echo "catch {set afa_error [string match *Fail* [assertion -summary -auto] ]}" >> ${vm_tcl} echo "if {$afa_error == 1} {puts "ifv: *E,AFAFAIL: AFA failure detected in IFV run - rerun job in interactive debug mode to debug (AFA)"}" >> ${vm_tcl} # Alias prove to run the vm tcl prove_tcl="${BRUN_RUN_DIR}/vm_prove.tcl" echo "alias -set prove input ${BRUN_RUN_DIR}/vm_tcl.tcl" >> ${prove_tcl} vm_tcl_option="+tcl+${prove_tcl}" cmd="ifv ${vm_tcl_option} ${f_option} ${tcl_option} ${BRUN_CMD_ARGS} ${run_option} +coverage" echo "Running: $cmd" eval $cmd exit 0 4.3 Using the Scan Script and the Predefined Filter Files In order to facilitate failure analysis, Enterprise Manager automatically invokes vm_scan.pl script at the end of every run to scan the standard output, collect error messages and other interesting data, and format them for display in Enterprise Manager.
  • 52. 4-18 Enterprise Manager Getting Started Creating a Baseline Environment Using the Scan Script and the Predefined Filter Files © 2011 Cadence Design Systems, Inc. All rights reserved worldwide. The vm_scan.pl script takes as input the log files from the run and a list of filter files. Each filter file contains multiple customized filters that are designed to match and extract particular error messages and other failures issued by a particular tool or agent, such as Incisive Simulator, Specman, or IFV. When using Cadence tools, Enterprise Manager automatically detect the required set of filter files. You can find the predefined filter files in INCISIV-install-dir/EMGRnn/bin/*flt. Table 4-1 describes the predefined filter files. To use a predefined 3rd party tool, filter file with Enterprise Manager: ● Define the scan_script attribute within a session, group or test container in the vsif and specify a string invoking vm_scan.pl with the desired filters. For example: group first_tests { scan_script: "vm_scan.pl denali.flt modelsim.flt;"; ... }; Note If you need to set up the environment or perform other actions before calling the vm_scan.pl script, you can specify the name of a wrapper script in the scan_script attribute and call vm_scan.pl from the wrapper script. Table 4-1 Predefined Filter Files Filter File Name Description denali.flt Filters for use with Denali. ies.flt Filters for use with IES (the Specman filters and the Incisive Simulator filters) ifv.flt Filters for use with Incisive Formal Verifier. ius.flt Filters for use with IES (no Specman filters). modelsim.flt Filters for use with Modelsim uvm.flt Filters for UVM messages Note The ovm_sv_lib.flt filter file is used for backward compatibility only. shell.flt Filters to capture various shell-related events specman.flt Filters for use with Specman vcs.flt Filters for use with VCS xsim.flt Filters for use with Xsim
  • 53. Enterprise Manager Getting Started 4-19 Creating a Baseline Environment Using the Scan Script and the Predefined Filter Files © 2011 Cadence Design Systems, Inc. All rights reserved worldwide. See Also ● If you are using a tool that does not have a factory filter file, see “Creating and Modifying Scan Script Filters” on page 2-50 in Enterprise Manager Managing Regressions. ● vm_scan.pl on page B-13 in Enterprise Manager Managing Regressions
  • 54. 4-20 Enterprise Manager Getting Started Creating a Baseline Environment Using the Scan Script and the Predefined Filter Files © 2011 Cadence Design Systems, Inc. All rights reserved worldwide.
  • 55. Enterprise Manager Getting Started 5-1 © 2011 Cadence Design Systems, Inc. All rights reserved worldwide. 5 Launching a Session You can launch and track a session in any one of the following ways: ● Run a session in batch and view the results after the session completes. ● Launch a session in batch and then track it interactively. ● Launch a session and track it interactively. To launch a session: 1. Create a vsif file. 2. Invoke Enterprise Manager interactively or in batch and pass the name of the vsif. The following sections describe launching and monitoring sessions: ● “Creating a Baseline vsif” on page 5-1 ● “Launching a Session Interactively” on page 5-3 ● “Launching a Session in Batch” on page 5-6 ● “Tracking Running Sessions” on page 5-7 ● “Stopping a Session or a Run” on page 5-18 ● “Stopping a Session or a Run” on page 5-18 See Also ● “Setting Up the Launch Environment” on page 2-2 in Enterprise Manager Managing Regressions 5.1 Creating a Baseline vsif At minimum, a vsif must include:
  • 56. 5-2 Enterprise Manager Getting Started Launching a Session Creating a Baseline vsif © 2011 Cadence Design Systems, Inc. All rights reserved worldwide. ● A session container with a top_dir attribute defining the root directory for the session output files. ● A test container with a run_script and a scan_script attribute. The examples shown below have additional attributes that specify the number of times to run a single test (count) and the testbench files to load on top of the snapshot (top_files). The timeout number defines the maximum execution time of the command given in the run_script attribute. If a run does not complete within the specified time, it is killed and marked as an error. Note The $ENV(env-var) expression returns the value of the specified environment variable. For more information, see “Referencing Environment Variables in a vsif” on page 2-24 in Enterprise Manager Managing Regressions. Example 1 IES Baseline vsif session my_first_session { top_dir : $ENV(MY_REGRESSION_AREA); output_mode : terminal; pre_session_script: "$ENV(SCRIPTS}/irun_build_snapshot.sh" ; }; group ius_tests { sve_name: "$ENV(SVE)/ius.sve" ; run_script: "$ENV(SCRIPTS)/irun_run.sh" ; scan_script: "vm_scan.pl shell.flt ius.flt" ; test test_basic { hdl_files: "-f $ENV(TESTS)/test_basic.f"; sv_seed: 3; }; test many_short { hdl_files: "-f $ENV(TESTS)/test_short.f"; count: 10; // Run this many sims with random seed }; }; Example 2 IFV Baseline vsif It is important to disable Enterprise Manager’s timeout mechanism when running IFV. session my_first_session { top_dir : $ENV(MY_REGRESSION_AREA); output_mode : terminal; pre_session_script: "$ENV(SCRIPTS}/ifv_build_snapshot.sh" ; }; group ifv_tests { sve_name: "$ENV(SVE)/ifv.sve" ;
  • 57. Enterprise Manager Getting Started 5-3 Launching a Session Launching a Session Interactively © 2011 Cadence Design Systems, Inc. All rights reserved worldwide. run_script: "$ENV(SCRIPTS)/ifv_run.sh" ; scan_script: "vm_scan.pl shell.flt ifv.flt" ; timeout: 0; // disable timeout mechanism run_mode: batch_debug; // write CEX and witness data test test_basic { top_files: "-f $ENV(TESTS)/test_basic.f"; }; }; Example 3 Specman Baseline vsif A Specman vsif often has additional attributes to pass pre-commands and a test command to Specman. session my_first_session { top_dir : $ENV(MY_REGRESSION_AREA); output_mode : terminal; pre_session_script: "$ENV(SCRIPTS}/irun_build_snapshot.sh" ; }; group ies_tests { sve_name: "$ENV(SVE)/ies.sve" ; run_script: "$ENV(SCRIPTS)/irun_run.sh" ; scan_script: "vm_scan.pl shell.flt ies.flt" ; pre_commands: "set checks ERROR_CONTINUE"; test_command: test; test test_basic { top_files: "$ENV(TESTS)/test_basic.e"; sv_seed: 3; seed: 3; // passed directly to Specman }; test many_short { top_files: "$ENV(TESTS)/test_short.e"; count: 10; // Run this many times with random seed }; }; 5.2 Launching a Session Interactively Before you launch a session, review “Setting Up the Launch Environment” on page 2-2 in Enterprise Manager Managing Regressions to be sure that the launch environment variables are set correctly. To launch a session interactively: 1. Type the following at the OS prompt:
  • 58. 5-4 Enterprise Manager Getting Started Launching a Session Launching a Session Interactively © 2011 Cadence Design Systems, Inc. All rights reserved worldwide. emanager [-des[ktop]] & The Enterprise Manager main window opens. This window, shown in Figure 5-1, is the interface for executing new sessions and performing analysis on a per-session basis. Figure 5-1 Enterprise Manager Main Window Note If you invoke Enterprise Manager in desktop mode, the buttons and menu commands that invoke Enterprise Manager features are greyed out. At the same time, the Enterprise Manager Console window also opens. This window, shown in Figure 5-2, serves as the command prompt for Enterprise Manager and displays Enterprise Manager messages.
  • 59. Enterprise Manager Getting Started 5-5 Launching a Session Launching a Session Interactively © 2011 Cadence Design Systems, Inc. All rights reserved worldwide. Figure 5-2 Enterprise Manager Console Window 2. Load the verification analysis files using the load command at the Enterprise Manager prompt in the Enterprise Manager Console window. The verification analysis files are e files that define Enterprise Manager file policies, rerun schemes, and so on. For more information on these files, see Chapter 2 “Setting Up a Regression Environment” in Enterprise Manager Managing Regressions. 3. Execute the setup command at the Enterprise Manager prompt or click Analysis – Setup or the Setup button in the Enterprise Manager main window. This command registers the file policies and schemes defined in the verification analysis files, as well as the user-defined attributes declared in your vm_attributes.csv file. Notes ● To load analysis environment files after executing the setup command, execute a reload or restore in the Enterprise Manager Console window first. ● You might want to compile the verification and analysis environment, execute the setup command and then save the environment so that you can easily restore this state. An alternative is to add the setup command to the VMANAGER_PRE_COMMANDS setting. See “Passing Commands to Enterprise Manager” on page 2-8 in Enterprise Manager Managing Regressions for an example of how to set this variable. 4. Be sure that the Distributed Resource Manager (DRM) is set to Serial Local: a. In the Enterprise Manager main window, click on Config. b. Select the DRM tab.