You are on page 1of 48

Tanner™ and Linux-Based Tools Setup

Software Version 2019.2

Document Revision 1

© 2015-2019 Mentor Graphics Corporation


All rights reserved.

This document contains information that is proprietary to Mentor Graphics Corporation. The original recipient of this
document may duplicate this document in whole or in part for internal business purposes only, provided that this entire
notice appears in all copies. In duplicating any part of this document, the recipient agrees to make every reasonable
effort to prevent the unauthorized use and distribution of the proprietary information.

Note - Viewing PDF files within a web browser causes some links not to function (see MG595892).
Use HTML for full navigation.
This document is for information and instruction purposes. Mentor Graphics reserves the right to make
changes in specifications and other information contained in this publication without prior notice, and the
reader should, in all cases, consult Mentor Graphics to determine whether any changes have been
made.

The terms and conditions governing the sale and licensing of Mentor Graphics products are set forth in
written agreements between Mentor Graphics and its customers. No representation or other affirmation
of fact contained in this publication shall be deemed to be a warranty or give rise to any liability of Mentor
Graphics whatsoever.

MENTOR GRAPHICS MAKES NO WARRANTY OF ANY KIND WITH REGARD TO THIS MATERIAL
INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
FITNESS FOR A PARTICULAR PURPOSE.

MENTOR GRAPHICS SHALL NOT BE LIABLE FOR ANY INCIDENTAL, INDIRECT, SPECIAL, OR
CONSEQUENTIAL DAMAGES WHATSOEVER (INCLUDING BUT NOT LIMITED TO LOST PROFITS)
ARISING OUT OF OR RELATED TO THIS PUBLICATION OR THE INFORMATION CONTAINED IN IT,
EVEN IF MENTOR GRAPHICS HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.

U.S. GOVERNMENT LICENSE RIGHTS: The software and documentation were developed entirely at
private expense and are commercial computer software and commercial computer software
documentation within the meaning of the applicable acquisition regulations. Accordingly, pursuant to
FAR 48 CFR 12.212 and DFARS 48 CFR 227.7202, use, duplication and disclosure by or for the U.S.
Government or a U.S. Government subcontractor is subject solely to the terms and conditions set forth in
the license agreement provided with the software, except for provisions which are contrary to applicable
mandatory federal laws.

TRADEMARKS: The trademarks, logos and service marks ("Marks") used herein are the property of
Mentor Graphics Corporation or other parties. No one is permitted to use these Marks without the prior
written consent of Mentor Graphics or the owner of the Mark, as applicable. The use herein of a third-
party Mark is not an attempt to indicate Mentor Graphics as a source of a product, but is intended to
indicate a product from, or associated with, a particular third party. A current list of Mentor Graphics’
trademarks may be viewed at: mentor.com/trademarks.

The registered trademark Linux® is used pursuant to a sublicense from LMI, the exclusive licensee of
Linus Torvalds, owner of the mark on a world-wide basis.

End-User License Agreement: You can print a copy of the End-User License Agreement from:
mentor.com/eula.

Mentor Graphics Corporation


8005 S.W. Boeckman Road, Wilsonville, Oregon 97070-7777
Telephone: 503.685.7000
Toll-Free Telephone: 800.592.2210
Website: mentor.com
Support Center: support.mentor.com

Send Feedback on Documentation: support.mentor.com/doc_feedback_form


Revision History

Revision Changes Status/


Date
1 Modifications to improve the readability and comprehension of Released
the content. Approved by Lucille Woo. May 2019
All technical enhancements, changes, and fixes listed in the
Tanner Tools Release Notes for this product are reflected in this
document. Approved by Barry Dyne.

Author: In-house procedures and working practices require multiple authors for documents. All
associated authors for each topic within this document are tracked within the Mentor Graphics
Technical Publication’s source. For specific topic authors, contact Mentor Graphics Technical
Publication department.

Revision History: Released documents include a revision history of up to four revisions. For
earlier revision history, refer to earlier releases of documentation on Support Center.

Tanner™ and Linux-Based Tools Setup, v2019.2

Note - Viewing PDF files within a web browser causes some links not to function. Use HTML for full navigation.
4 Tanner™ and Linux-Based Tools Setup, v2019.2

Note - Viewing PDF files within a web browser causes some links not to function. Use HTML for full navigation.
Table of Contents

Revision History

Chapter 1
Introduction and Prerequisites . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
Tool, Licensing, and Host Prerequisites . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

Chapter 2
Connection and Security Setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
Installing PuTTY, PuTTYgen, and Pageant . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
Creating the Public/Private SSH Key Pair. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
Adding the Private Key to Pageant . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
Configuring the Calibre Integration. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
Configuring the Oasys-RTL or Nitro-SOC Integration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
Configuring the AFS Integration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
Using vi to Create the authorized_keys File in Linux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
Using vi to Create the Worker File in Linux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
Using vi to Create the runafs.sh File in Linux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

Chapter 3
Troubleshooting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
PuTTY Command Window Requests a Password . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
Pageant has 0 SSH-2 keys . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
SSH Connection Exited . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
SSH Connection Timed Out Waiting for Worker . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
“Server refused our key” from Shell . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
Licensing Error . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
Adding Inbound Rule to Fix Windows Firewall . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
Tool-Specific Troubleshooting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
"HELLO_NITRO ..." not Printed in Nitro Shell . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
“HELLOEVI ... evi_worker” Not Printed in Calibre Shell . . . . . . . . . . . . . . . . . . . . . . . . 38
“Waiting for schematic” from Calibre Interactive nmLVS or PEX . . . . . . . . . . . . . . . . . . 38
Calibre Interactive Does Not Open. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
Third-Party Information
End-User License Agreement

Tanner™ and Linux-Based Tools Setup, v2019.2 5


Table of Contents

6 Tanner™ and Linux-Based Tools Setup, v2019.2


List of Figures

Figure 2-1. Secure Communication Between the Tanner and Linux-Based Tools . . . . . . . . 11

Tanner™ and Linux-Based Tools Setup, v2019.2 7


List of Figures

8 Tanner™ and Linux-Based Tools Setup, v2019.2


Chapter 1
Introduction and Prerequisites

Microsoft® Windows®-based Tanner™ tools connect to Linux-based tools such as the Calibre®,
Oasys™-RTL (RealTimeDesigner™), Nitro™-SOC™, and Analog FastSPICE™ (AFS™) tools to
expand functionality. The PuTTY SSH client enables the connection between the Windows and
Linux machines, and the SSH public key authentication ensures secure communication.
After establishing communication between the Tanner and Linux®-based1 tools, you can do the
following:

• Run Calibre Interactive™ nmDRC, nmLVS, and Parasitic Extraction (PEX) in a design
that is open in the L-Edit™ tool.
• View a Calibre results database using Calibre RVE™ and highlight results in a design
that is open in the L-Edit or S-Edit™ tools.
• Perform synthesis and place-and-route on RTL files using the Oasys-RTL and Nitro-
SOC tools from the L-Edit tool.
• Simulate from the S-Edit tool using the AFS tool simulator.
Tool, Licensing, and Host Prerequisites . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

Tool, Licensing, and Host Prerequisites


Before you set up your Windows and Linux machines to communicate, prerequisites for the
tools, licensing, and Linux host must be met.
• The Tanner tools are installed on a Windows machine.
• The Calibre, Oasys-RTL, Nitro-SOC, or AFS tools are installed on a Linux machine.
Download the following from Support Center:
Calibre — Calibre
Oasys-RTL — Oasys-RTL (RealTimeDesigner)
Nitro-SOC — Tanner EDA Place and Route
AFS — Analog FastSPICE (AFS)

1. Linux® is a registered trademark of Linus Torvalds in the U.S. and other countries.

Tanner™ and Linux-Based Tools Setup, v2019.2 9

Note - Viewing PDF files within a web browser causes some links not to function. Use HTML for full navigation.
Introduction and Prerequisites
Tool, Licensing, and Host Prerequisites

• You can log in to the Linux machine using a client that supports a graphical interface.
Some common clients are Virtual Network Computing (VNC) and programs that
communicate with virtual machines (VMs).
• FlexNet licensing is installed on either Windows or Linux.
For Windows, the FlexNet software is included in the Tanner EDA Software download
and can be installed through the Mentor Graphics Install program.
Support Center has FlexNet software for both the Windows and Linux operating
systems. On Support Center, under My Products, click on Licensing. On the Licensing
page that opens, click Downloads. On the Downloads page, you will find the file to
download and system requirements.

Note
If you do not see Licensing under My Products on Support Center, click on Manage
Products and add change Licensing to show.

10 Tanner™ and Linux-Based Tools Setup, v2019.2

Note - Viewing PDF files within a web browser causes some links not to function. Use HTML for full navigation.
Chapter 2
Connection and Security Setup

To enable the Windows machine hosting the Tanner tools to connect to the Linux machine
hosting the Calibre, Oasys-RTL, Nitro-SOC, or AFS tools, you must install the PuTTY SSH
client on your Windows machine. You then create the SSH public/private key pair that ensures
secure communication between the Windows and Linux machines. Lastly, you enable tool-to-
tool communication by installing a script on the Linux machine and configuring the
environment on the Windows machine.
The private key of the SSH public/private key pair is stored in the Pageant authentication agent
on the Windows machine, and the public key resides on the Linux machine in the
authorized_keys file.

The scripts that you install on the Linux machine are tool-specific:

• Calibre tool — evi_worker


• Oasys-RTL and Nitro-SOC tools — nitro_worker
• AFS tool — esi_worker.py
Figure 2-1. Secure Communication Between the Tanner and Linux-Based Tools

If all of the following are true, proceed to “Configuring the Calibre Integration” on page 17,
“Configuring the Oasys-RTL or Nitro-SOC Integration” on page 21, or “Configuring the AFS
Integration” on page 25:

• The PuTTY SSH client is installed on your Windows machine.

Tanner™ and Linux-Based Tools Setup, v2019.2 11

Note - Viewing PDF files within a web browser causes some links not to function. Use HTML for full navigation.
Connection and Security Setup
Installing PuTTY, PuTTYgen, and Pageant

• You have already created the SSH private/public key pair. The private key is stored in
the Pageant agent on the Windows machine, and the public key is stored in the
authorized_keys file on the Linux machine.
• The Linux-based tools, if you are using more than one, are installed on the same Linux
machine.
• You are using your existing Linux login name and password.
Installing PuTTY, PuTTYgen, and Pageant . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
Creating the Public/Private SSH Key Pair . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
Adding the Private Key to Pageant . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
Configuring the Calibre Integration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
Configuring the Oasys-RTL or Nitro-SOC Integration. . . . . . . . . . . . . . . . . . . . . . . . . . 21
Configuring the AFS Integration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
Using vi to Create the authorized_keys File in Linux . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
Using vi to Create the Worker File in Linux. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
Using vi to Create the runafs.sh File in Linux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

Installing PuTTY, PuTTYgen, and Pageant


The PuTTY SSH client on your Windows machine enables it to connect to the Linux machine
hosting the Calibre, Oasys-RTL, Nitro-SOC, or AFS tools. The PuTTY installation includes the
PuTTYgen and Pageant tools. PuTTYgen is used to create the SSH public/private key pair for
secure communication. The Pageant tool is an authentication agent that stores the private key
for reuse any time you connect to the Linux machine.
Prerequisites
• Refer to “Tool, Licensing, and Host Prerequisites” on page 9.
Procedure
1. Navigate to the PuTTY download page:
http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html

2. Click the link putty-<version>-installer.msi to download the Windows MSI installer


package. Download the 64-bit version.
3. Open the downloaded file and step through the PuTTY Setup Wizard.

Note
Make sure the feature “Associate .PPK files with PuTTYgen and Pageant” is
installed. (The wording for this option may vary with the PuTTY installation.)

4. Proceed to “Creating the Public/Private SSH Key Pair” on page 13.

12 Tanner™ and Linux-Based Tools Setup, v2019.2

Note - Viewing PDF files within a web browser causes some links not to function. Use HTML for full navigation.
Connection and Security Setup
Creating the Public/Private SSH Key Pair

Creating the Public/Private SSH Key Pair


The SSH public/private key pair ensures secure communication between the Windows machine
hosting the Tanner tools and the Linux machine hosting the Calibre, Oasys-RTL, Nitro-SOC, or
AFS tools.
The PuTTYgen tool generates the public/private key pair. The public key resides on the Linux
machine in the authorized_keys file, and the private key is stored in the Pageant authentication
agent on the Windows machine. When the Windows and Linux machines are communicating,
the associated public and private keys establish the identities of the machines.

Prerequisites
• The ability to log in to the Linux machine hosting the Calibre, Oasys-RTL, Nitro-SOC,
or AFS tools.
• “Installing PuTTY, PuTTYgen, and Pageant” on page 12 is complete.
Procedure
1. Type PuTTYgen in the Windows Start menu and run it.
2. Select RSA for “Type of key to generate” in the PuTTY Key Generator dialog box.
3. Click Generate and follow the instructions for generating a random key.
4. Complete the fields of the Key Generator dialog box:
a. Type tanner_linux_auth_key in the “Key Comment” field.
b. Add a passphrase, or password, in the “Key passphrase” and “Confirm passphrase”
fields.
The passphrase is optional but highly recommended because the generated key
grants access to everything for which you have permissions on your network. You
enter this passphrase each time the Pageant client is launched, usually each time you
reboot your computer.
c. Click Save public key. Save the key as id_rsa.pub in the folder C:\Users\
<username>\Documents\Keys. Create the Keys directory if it does not exist.
d. Click Save private key. Save the key as id_rsa.ppk in the folder C:\Users\
<username>\Documents\Keys.
e. Leave the PuTTY Key Generator dialog box open for a later step.

5. Log in to the Linux machine with a viewer such as VNC or VMware.


6. Create a $HOME/.ssh directory with read-write-execute permissions only for you:
a. Type the following command to determine whether the directory exists:
ls -ld $HOME/.ssh

Tanner™ and Linux-Based Tools Setup, v2019.2 13

Note - Viewing PDF files within a web browser causes some links not to function. Use HTML for full navigation.
Connection and Security Setup
Creating the Public/Private SSH Key Pair

If the directory exists, a line similar to the following is displayed, in which


“drwx------” indicates the directory permissions:
drwx------ 2 user-1 grp2 4096 Oct 22 12:32 .ssh/

b. Follow the steps in the following table if the directory does not exist or the
permissions are not read-write-executable:

If ... Do this ...


The directory exists but the Change the permissions with this command:
permissions are not “drwx-----” chmod 700 $HOME/.ssh
The directory does not exist Create the directory with these commands:
umask 077
mkdir $HOME/.ssh

7. Create a new file named authorized_keys in the $HOME/.ssh directory, using any text
editor, and paste the public key into it.
The following steps use the text editor gvim:
a. Type the following command to open gvim and create the file:
gvim $HOME/.ssh/authorized_keys

b. In the open PuTTY Key Generator dialog box on the Windows machine (Refer to
Step 4), right-click in the Key text field, choose Select All, and then choose Copy.
c. Paste the generated key text into the authorized_keys file in the Linux gvim session.
The pasted text must meet the following criteria:
o One line with no carriage returns
o Begins with “ssh-rsa” without quotation marks
o Ends with “tanner_linux_auth_key” without quotation marks

14 Tanner™ and Linux-Based Tools Setup, v2019.2

Note - Viewing PDF files within a web browser causes some links not to function. Use HTML for full navigation.
Connection and Security Setup
Adding the Private Key to Pageant

d. Save the file and then close the gvim session.


e. Set the permissions for the authorized_keys file to be read-write-executable solely
for the owner:
chmod 700 $HOME/.ssh/authorized_keys

8. Close the PuTTY Key Generator dialog box.


9. Proceed to “Adding the Private Key to Pageant” on page 15.
Related Topics
Using vi to Create the authorized_keys File in Linux

Adding the Private Key to Pageant


The authentication agent Pageant stores the private key of the SSH private/public key pair on
the Windows machine hosting the Tanner tools. The PuTTY SSH client loads the private key
from the Pageant agent and uses it to ensure secure communication with the Linux machine that
hosts the Calibre, Oasys-RTL, Nitro-SOC, or AFS tools and holds the public key.
The Pageant agent must be started each time the Windows machine is rebooted. Once started, it
runs in the background.

Prerequisites
• The Pageant agent is installed.
• The private key id_rsa.ppk is saved to the C:\Users\<username>\Documents\Keys
folder on the Windows computer hosting the Tanner tools.
Procedure
1. Navigate to the C:\Users\<username>\Documents\Keys folder on the Windows
machine.
2. Double-click the private key file, id_rsa.ppk.
The Pageant agent prompts you for your password, then minimizes to the system tray.
3. (Recommended) Add the id_rsa.ppk file to the Windows Startup folder so that each time
the Windows machine reboots, the PuTTY SSH client loads the private key from the
Pageant agent.
a. Open the folder C:\Users\<username>\AppData\Roaming\Microsoft\Windows\Start
Menu\Programs\Startup.
b. Right-drag the id_rsa.ppk file from C:\Users\<username>\Documents\Keys to the
Startup folder, creating a shortcut.

Tanner™ and Linux-Based Tools Setup, v2019.2 15

Note - Viewing PDF files within a web browser causes some links not to function. Use HTML for full navigation.
Connection and Security Setup
Adding the Private Key to Pageant

4. (Optional) Test the connection between the machines and the SSH public/private key
pair:
a. Log in to the Linux machine hosting the Calibre, Oasys-RTL, Nitro-SOC, or AFS
tools and open a terminal window. At the command prompt, type the following
command:
hostname

If the returned hostname is localhost or localhost.localdomain, use the IP address


instead of the hostname. To determine the IP address of the Linux machine, type the
following command:
/sbin/ip addr show eth0

In the lines resulting from this command, the text “inet” precedes the IP address. For
example, 147.34.220.248 is the IP address for the following:
inet 147.34.220.248

Note
In most cases, the IP address of the Linux machine is the one associated with
eth0. If you are using the Linux virtual machine provided by Mentor Graphics,
then the IP address of that machine is associated with eth1. To display all ethX on a
machine, type:
/sbin/ip addr

b. Log out of the Linux machine.


c. Open the PuTTY SSH client from the Windows Start menu.
d. Enter your Linux login and the hostname (or IP address) of your Linux machine,
using the syntax username@hostname.
e. Click Open.

16 Tanner™ and Linux-Based Tools Setup, v2019.2

Note - Viewing PDF files within a web browser causes some links not to function. Use HTML for full navigation.
Connection and Security Setup
Configuring the Calibre Integration

If the PuTTY client and the SSH public/private key pair are configured correctly, the
PuTTY command window opens without requesting a password:

5. Proceed to the next topic for your tool:


• “Configuring the Calibre Integration” on page 17
• “Configuring the Oasys-RTL or Nitro-SOC Integration” on page 21
• “Configuring the AFS Integration” on page 25
Related Topics
Installing PuTTY, PuTTYgen, and Pageant
Creating the Public/Private SSH Key Pair
PuTTY Command Window Requests a Password

Configuring the Calibre Integration


With the PuTTY SSH client and the SSH public/private key pair enabling secure
communication between the machines hosting the Tanner and Calibre tools, the External
Verification Interface (EVI) enables tool-to-tool communication.
Configuring the EVI consists of two parts:

• Copying the evi_worker file from the installation directory of your Tanner tools on the
Windows machine to the Linux machine hosting the Calibre tool
• Providing values, in the L-Edit tool, for the environment variables and the path to the
Calibre tool

Tanner™ and Linux-Based Tools Setup, v2019.2 17

Note - Viewing PDF files within a web browser causes some links not to function. Use HTML for full navigation.
Connection and Security Setup
Configuring the Calibre Integration

Prerequisites
• The public/private key pair for the PuTTY SSH client is stored in the Pageant agent and
the agent is running.
• You can log in to the Linux machine hosting the Calibre tool using a viewer such as
VNC, VMware, or VirtualBox.
Procedure
1. Log in to the Linux machine.
2. Create a $HOME/bin directory if it does not exist:
a. Type the following to determine whether your $HOME directory has a bin
subdirectory:
ls -ld $HOME/bin

If the directory exists, a line similar to the following is displayed:


drwxrwxr-x 3 jdoe grp2 4096 May 3 08:49 /home/jdoe/bin/

b. If the bin directory does not exist, type the following to create it:
mkdir bin

3. Open a file browser on the Windows machine and navigate to the directory C:\
MentorGraphics\Tanner EDA\Tanner Tools v<version>\x64\LinuxUtils. Some
installations may be in a different location, such as C:\Users\<username>\Documents\
Tanner EDA\Tanner Tools v<version>\x64\LinuxUtils.
You should see the evi_worker file. If you do not see this file, try a Windows file system
search, or contact your support representative.
4. Use the following instructions to copy the evi_worker file to the $HOME/bin directory
on your Linux machine:

If … Do this …
Your Linux home Copy the evi_worker file from the installation directory of the
directory is mapped Tanner tools to the $HOME/bin directory on the Linux host.
in Windows
Your Linux home 1. Open the evi_worker file in a text editor on the Windows
directory is not machine.
mapped in Windows 2. Use gvim on the Linux machine to create a text file named
evi_worker in your $HOME/bin directory:
gvim $HOME/bin/evi_worker
3. Copy the contents of the evi_worker file from the Windows
machine to the gvim session on the Linux machine.
4. Save the file and exit gvim.

18 Tanner™ and Linux-Based Tools Setup, v2019.2

Note - Viewing PDF files within a web browser causes some links not to function. Use HTML for full navigation.
Connection and Security Setup
Configuring the Calibre Integration

5. Run the following command on the Linux machine to make the evi_worker file
executable:
chmod +x $HOME/bin/evi_worker

6. Type the following to determine the display setting:


echo $DISPLAY

Note the value for use in the Setup Calibre Connection dialog box in a later step.

Note
Do not perform this step in the PuTTY SSH client command window. It has no value
for the Display environment variable. Perform this step in your viewer.

7. Open a design in the L-Edit tool.

8. Click Setup Calibre Connection from the Calibre toolbar ( ).

If the Calibre toolbar is not visible, right-click in the toolbar area and choose Calibre.
9. Type the following in the Setup Calibre Connection dialog box:

Field Description
Hostname for Calibre The username and the hostname or IP address of the remote
Linux server, followed by the full path to the evi_worker file on
your Linux server. For example:
janedoe@myhostname $HOME/bin/evi_worker
or
janedoe@myhostname /home/janedoe/bin/evi_worker
Calibre binary or script The Calibre executable.
$CALIBRE_HOME/bin/calibre
User environment variables section
CALIBRE_HOME The absolute path to the Calibre installation directory. For
example:
/my_installs/calibre/aoi_cal_2015.4_16.11
DISPLAY The value of $DISPLAY found in Step 6. For example:
:1051:0
or
999.88.77.666:0:0

Tanner™ and Linux-Based Tools Setup, v2019.2 19

Note - Viewing PDF files within a web browser causes some links not to function. Use HTML for full navigation.
Connection and Security Setup
Configuring the Calibre Integration

Field Description
MGLS_LICENSE_FILE The location of the FlexNet license server (port@hostname) or
license file. For example:
1717@xy-lic-01
or
/home/janedoe/Tools/license.dat

10. Test whether the integration is set up correctly by clicking Open Calibre Shell
( ) in the Calibre toolbar. The output should be similar to the
following:

If you do not see the lines about successful Pageant authentication, refer to “Creating the
Public/Private SSH Key Pair” on page 13.
11. Create the directories to contain the files for your Calibre verification jobs. For example:
mkdir -p /designs/rf_block/calibre

You can create symbolic links or copy the rule files, netlists, or runsets to this directory.
12. (Optional) Configure your Linux environment to support an internet browser:
By default, the Calibre documentation system expects a Firefox, Mozilla, or Netscape
browser to be available in your environment. If typing which firefox, which mozilla,
and which netscape in a Linux terminal returns empty strings, then set the
MGC_HTML_BROWSER environment variable to the path of your browser.

20 Tanner™ and Linux-Based Tools Setup, v2019.2

Note - Viewing PDF files within a web browser causes some links not to function. Use HTML for full navigation.
Connection and Security Setup
Configuring the Oasys-RTL or Nitro-SOC Integration

Note
Not all browsers are supported. Refer to the “Browser Settings” section of the
Mentor Graphics Documentation System manual (Tanner Tools v<version>/x64/
docs/pdfdocs/mgc_html_help.pdf) in the software bookcase.

• C Shell — Add the following to your $HOME/.cshrc file:


setenv MGC_HTML_BROWSER path_to_browser

• Bourne Shell — Add the following to your $HOME/.profile file:


export MGC_HTML_BROWSER=path_to_browser

Note
If the$HOME/.bash_profile or $HOME/.bashrc files exist, modify those files
instead.

13. (Optional) Close the PuTTY command window if you are not going to use the Calibre
tool immediately.
Results
You are ready to run the Calibre tool from an L-Edit session. Refer to the Running Calibre From
L-Edit section in the Tanner L-Edit User’s Manual.
Related Topics
Creating the Public/Private SSH Key Pair
Adding the Private Key to Pageant
Using vi to Create the Worker File in Linux
Pageant has 0 SSH-2 keys
“HELLOEVI ... evi_worker” Not Printed in Calibre Shell

Configuring the Oasys-RTL or Nitro-SOC


Integration
With the PuTTY SSH client and the SSH public/private key pair enabling secure
communication between the machines hosting the Tanner and Oasys-RTL or Nitro-SOC tools,
the nitro_worker interface enables tool-to-tool communication.
Configuring the nitro_worker interface consists of two parts:

• Copying the nitro_worker file from the installation directory of your Tanner tools on the
Windows machine to the Linux machine hosting the Oasys-RTL or Nitro-SOC tools

Tanner™ and Linux-Based Tools Setup, v2019.2 21

Note - Viewing PDF files within a web browser causes some links not to function. Use HTML for full navigation.
Connection and Security Setup
Configuring the Oasys-RTL or Nitro-SOC Integration

• Providing values, in the L-Edit tool, for environment variables and paths to the Oasys or
Nitro tools
Prerequisites
• The public/private key pair for the PuTTY SSH client is stored in the Pageant agent and
the agent is running.
• You can log in to the Linux machine hosting the Oasys-RTL or Nitro-SOC tools using a
viewer such as VNC, VMware, or VirtualBox.
Procedure
1. Log in to the Linux machine.
2. Create a $HOME/bin directory if it does not exist:
a. Type the following to determine whether your $HOME directory has a bin
subdirectory:
ls -ld $HOME/bin

If the directory exists, a line similar to the following is displayed:


drwxrwxr-x 3 jdoe grp2 4096 May 3 08:49 /home/jdoe/bin/

b. If the bin directory does not exist, type the following to create it:
mkdir bin

3. Open a file browser on the Windows machine and navigate to the directory C:\
MentorGraphics\Tanner EDA\Tanner Tools v<version>\x64\LinuxUtils. Some
installations may be in a different location, such as C:\Users\<username>\Documents\
Tanner EDA\Tanner Tools v<version>\x64\LinuxUtils.
You should see the nitro_worker file. If you do not see this file, try a Windows file
system search, or contact your support representative.
4. Use the following instructions to copy the nitro_worker file to $HOME/bin on your
Linux machine:

If … Do this …
Your Linux home Copy the nitro_worker file from the installation
directory is mapped in directory of the Tanner tools to the $HOME/bin
Windows directory on the Linux host.

22 Tanner™ and Linux-Based Tools Setup, v2019.2

Note - Viewing PDF files within a web browser causes some links not to function. Use HTML for full navigation.
Connection and Security Setup
Configuring the Oasys-RTL or Nitro-SOC Integration

If … Do this …
Your Linux home 1. Open the nitro_worker file in a text editor on the
directory is not Windows machine.
mapped in Windows 2. Use gvim on the Linux machine to create a text file
named nitro_worker in your $HOME/bin directory:
gvim $HOME/bin/nitro_worker
3. Copy the contents of the nitro_worker file from the
Windows machine to the gvim session on the Linux
machine.
4. Save the file and exit gvim.
5. Run the following command on the Linux machine to make the nitro_worker file
executable:
chmod +x $HOME/bin/nitro_worker

6. Open a design in the L-Edit tool.


7. Click Setup Tanner Digital Implementer Connection in the Nitro toolbar
( ). If the Nitro toolbar is not visible, right-click in the toolbar area and
choose Nitro.
8. Type the following in the Setup Tanner Digital Implementer Connection dialog box:

Field Description
Hostname for Nitro The username and the hostname or IP address of the remote
Linux server, followed by the full path to the nitro_worker file
on your Linux server. For example:
janedoe@myhostname $HOME/bin/nitro_worker
or
janedoe@myhostname /home/janedoe/bin/nitro_worker
Nitro binary or The absolute path to the Nitro-SOC installation directory. For
script example:
<installation_directory>/NitroAMSPack-<version>/
sierra/bin/nitroams
Oasys binary or The absolute path to the Oasys-RTL installation directory. For
script example:
<installation_directory>/Oasys-RTL-<version>/bin/
oasys
User environment variables section

Tanner™ and Linux-Based Tools Setup, v2019.2 23

Note - Viewing PDF files within a web browser causes some links not to function. Use HTML for full navigation.
Connection and Security Setup
Configuring the Oasys-RTL or Nitro-SOC Integration

Field Description
MGLS_LICENSE_ The location of the FlexNet license server (port@hostname) or
FILE license file. For example:
1717@xy-lic-01
or
/home/janedoe/Tools/license.dat

9. Test whether the integration is set up correctly by clicking Open Tanner Digital
Implementer Shell in the Nitro toolbar ( ). The output should be similar
to the following:

If you do not see the lines about successful Pageant authentication, refer to “Creating the
Public/Private SSH Key Pair” on page 13.
10. Close the PuTTY command window for the test log in to the Linux machine.
Results
You are ready to run the Oasys-RTL or Nitro-SOC tools from the L-Edit tool. Refer to the
Synthesis and Place and Route section in the Tanner L-Edit User’s Manual for more
information.
Related Topics
Creating the Public/Private SSH Key Pair
Adding the Private Key to Pageant
Using vi to Create the Worker File in Linux
Pageant has 0 SSH-2 keys

24 Tanner™ and Linux-Based Tools Setup, v2019.2

Note - Viewing PDF files within a web browser causes some links not to function. Use HTML for full navigation.
Connection and Security Setup
Configuring the AFS Integration

"HELLO_NITRO ..." not Printed in Nitro Shell

Configuring the AFS Integration


With the PuTTY SSH client and the SSH public/private key pair enabling secure
communication between the machines hosting the Tanner and AFS tools, the External
Simulator Interface (ESI) enables tool-to-tool communication.
Configuring the ESI consists of three parts:

• Copying the esi_worker.py file from the installation directory of your Tanner tools on
the Windows machine to the Linux machine hosting the AFS tool
• Creating the runafs.sh file on the Linux machine to set up values for environment
variables and the path to the AFS tool
• Providing your username and the name of the Linux machine in the ESI utility on the
Windows machine

Prerequisites
• The public/private key pair for the PuTTY SSH client is stored in the Pageant agent and
the agent is running.
Procedure
1. Log in to the Linux machine using PuTTY or a viewer.

Tanner™ and Linux-Based Tools Setup, v2019.2 25

Note - Viewing PDF files within a web browser causes some links not to function. Use HTML for full navigation.
Connection and Security Setup
Configuring the AFS Integration

2. Create a $HOME/bin directory if it does not exist:


a. Type the following to determine whether your $HOME directory has a bin
subdirectory:
ls -ld $HOME/bin

If the directory exists, a line similar to the following is displayed:


drwxrwxr-x 3 jdoe grp2 4096 May 3 08:49 /home/jdoe/bin/

b. If the bin directory does not exist, type the following to create it:
mkdir bin

3. Open a file browser on the Windows machine and navigate to the directory C:\
MentorGraphics\Tanner EDA\Tanner Tools v<version>\x64\LinuxUtils. Some
installations might be in a different location, such as C:\Users\<username>\Documents\
Tanner EDA\Tanner Tools v<version>\x64\LinuxUtils.
You should see the esi_worker.py file. If you do not see this file, try a Windows file
system search, or contact your support representative.
4. Use the following instructions to copy the esi_worker.py file to $HOME/bin on your
Linux machine:

If … Do this …
Your Linux home Copy the esi_worker.py file from the installation
directory is mapped in directory of the Tanner tools to the $HOME/bin
Windows directory on the Linux host.
Your Linux home 1. Open the esi_worker.py file in a text editor on the
directory is not Windows machine.
mapped in Windows 2. Use gvim on the Linux machine to create a text file
named esi_worker.py in your $HOME/bin directory:
gvim $HOME/bin/esi_worker.py
3. Copy the contents of the esi_worker.py file from the
Windows machine to the gvim session on the Linux
machine.
4. Save the file and exit gvim.

5. Run the following command on the Linux machine to make the esi_worker.py file
executable:
chmod +x $HOME/bin/esi_worker.py

6. Create a new file named runafs.sh in the $HOME/bin directory, using any text editor.

26 Tanner™ and Linux-Based Tools Setup, v2019.2

Note - Viewing PDF files within a web browser causes some links not to function. Use HTML for full navigation.
Connection and Security Setup
Configuring the AFS Integration

The following steps use the text editor gvim:


a. Type the following command to open gvim and create the file:
gvim $HOME/bin/runafs.sh

b. Type the following lines:


#!/bin/bash
set -e
export AFS_ROOT=<afs_installation_directory>/afs_root
export PATH=$PATH:$AFS_ROOT/bin
export MGLS_LICENSE_FILE=<FlexNet_license_server_or_file>
afs ${*}

Note
<FlexNet_license_server_or_file> is the location of the FlexNet license server
(port@hostname) or the license file (license.dat). For example:
1717@xy-lic-01
/home/janedoe/tools/license.dat

c. Save the file and close the gvim session.


d. Set the permissions for the runafs.shs file as read-write-executable for the owner and
read-executable for all others:
chmod 755 $HOME/.ssh/authorized_keys

7. Provide your username and the name of the Linux machine in the ESI utility on the
Windows machine:
a. In the Windows Start menu, choose All Programs > Mentor Graphics > Tanner
Tools v<version>x64 > External Simulation Interface v<version>.
b. In the External Simulator Interface dialog box, complete the following:
o Computer — The name or IP address of the Linux machine hosting the AFS
tool. Refer to Step 4.a of “Adding the Private Key to Pageant” on page 15.
o Username — Your Linux username.
The remaining options control aspects of the simulation, such as whether the
command window of the S-Edit tool displays messages from the AFS tool while the
simulation is running.
c. Click Apply and then Hide.
Results
You are ready to run the AFS tool from the S-Edit tool. Refer to Simulating With Analog
FastSPICE (AFS).

Tanner™ and Linux-Based Tools Setup, v2019.2 27

Note - Viewing PDF files within a web browser causes some links not to function. Use HTML for full navigation.
Connection and Security Setup
Using vi to Create the authorized_keys File in Linux

Related Topics
Creating the Public/Private SSH Key Pair
Adding the Private Key to Pageant
Using vi to Create the Worker File in Linux
Using vi to Create the runafs.sh File in Linux

Using vi to Create the authorized_keys File in


Linux
You can use the vi text editor to create the authorized_keys file if you do not have a graphical
text editor such as gvim.
Prerequisites
• You are logged in to the Linux machine that hosts the Calibre, Oasys-RTL, or Nitro-
SOC tools.
• You have completed “Creating the Public/Private SSH Key Pair” on page 13 up to Step
6, in which you verify the existence of or create the $HOME/.ssh directory on the Linux
machine.
Procedure
1. Open the authorized_keys file in vi using the following command:
vi $HOME/.ssh/authorized_keys

2. Press the i key to enter insert mode.


3. Go to the Windows PuTTY Key Generator dialog box session (Step 4, sub-step e in
“Creating the Public/Private SSH Key Pair” on page 13).
Right-click in the “Key” text field, choose Select All, and then choose Copy.
4. Right-click in the Linux vi session to paste the generated key text into the
authorized_keys file.
The pasted text must meet the following criteria:
• One line with no carriage returns
• Begins with “ssh-rsa” without quotation marks
• Ends with “tanner_linux_auth_key” without quotation marks
5. Press the Esc key to exit insert mode.
6. Type “:wq!” without the quotation marks to save the file. Press Enter to exit vi.

28 Tanner™ and Linux-Based Tools Setup, v2019.2

Note - Viewing PDF files within a web browser causes some links not to function. Use HTML for full navigation.
Connection and Security Setup
Using vi to Create the Worker File in Linux

7. Proceed to “Adding the Private Key to Pageant” on page 15.


Related Topics
Creating the Public/Private SSH Key Pair

Using vi to Create the Worker File in Linux


You can use the vi text editor to create the evi_worker, nitro_worker, and esi_worker files if you
do not have a graphical text editor such as gvim.
Prerequisites
• You are logged in to the Linux machine that hosts the Linux-based tool.
Procedure
1. Type one of the following commands at the prompt of the Linux machine to open the
appropriate file in vi:
vi $HOME/bin/evi_worker

vi $HOME/bin/nitro_worker

vi $HOME/bin/esi_worker

2. Press the i key to enter insert mode.


3. Copy the contents of the corresponding worker file from the Windows machine.
4. Right-click in the Linux vi session to paste the copied text.
5. Press the Esc key to exit insert mode.
6. Type “:wq!” without the quotation marks to save the file. Press Enter to exit vi.
Related Topics
Configuring the Calibre Integration
Configuring the Oasys-RTL or Nitro-SOC Integration
Configuring the AFS Integration

Using vi to Create the runafs.sh File in Linux


You can use the vi text editor to create the runafs.sh file if you do not have a graphical text
editor such as gvim.
Prerequisites
• You are logged in to the Linux machine that hosts the AFS tool.

Tanner™ and Linux-Based Tools Setup, v2019.2 29

Note - Viewing PDF files within a web browser causes some links not to function. Use HTML for full navigation.
Connection and Security Setup
Using vi to Create the runafs.sh File in Linux

Procedure
1. Type the following at the command prompt of the Linux machine to open the runafs.sh
file in vi:
vi $HOME/bin/runafs.sh

2. Press the i key to enter insert mode and type the following lines in the file:
#!/bin/bash
set -e
export AFS_ROOT=<afs_installation_directory>/afs_root
export PATH=$PATH:$AFS_ROOT/bin
export MGLS_LICENSE_FILE=<FlexNet_license_server_or_file>
afs ${*}

Note
<FlexNet_license_server_or_file> is the location of the FlexNet license server
(port@hostname) or the license file (license.dat) as in either of the following
examples:
1717@xy-lic-01
/home/janedoe/tools/license.dat

3. Press the Esc key to exit insert mode.


4. Type “:wq!” without the quotation marks to save the file. Press Enter to exit vi.
5. Proceed to “Adding the Private Key to Pageant” on page 15.
Related Topics
Configuring the AFS Integration

30 Tanner™ and Linux-Based Tools Setup, v2019.2

Note - Viewing PDF files within a web browser causes some links not to function. Use HTML for full navigation.
Chapter 3
Troubleshooting

Issues such as incorrect permissions in the Linux environment and licensing errors can prevent
the Tanner tools on a Windows machine from communicating with the Calibre, Oasys-RTL,
Nitro-SOC, or AFS tools on a Linux machine. This chapter provides solutions to common
issues.

PuTTY Command Window Requests a Password . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31


Pageant has 0 SSH-2 keys . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
SSH Connection Exited . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
SSH Connection Timed Out Waiting for Worker . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
“Server refused our key” from Shell . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
Licensing Error . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
Adding Inbound Rule to Fix Windows Firewall . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
Tool-Specific Troubleshooting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
"HELLO_NITRO ..." not Printed in Nitro Shell . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
“HELLOEVI ... evi_worker” Not Printed in Calibre Shell . . . . . . . . . . . . . . . . . . . . . . . . 38
“Waiting for schematic” from Calibre Interactive nmLVS or PEX . . . . . . . . . . . . . . . . . . 38
Calibre Interactive Does Not Open. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39

PuTTY Command Window Requests a


Password
The command window for the PuTTY SSH client requests a password if the one of keys in the
public/private key pair is missing or malformed.
Solution
Verify the following for the public key in your authorized_keys file:

• One line with no carriage returns


• Begins with “ssh-rsh” without quotation marks
• Ends with “tanner_linux_auth_key” without quotation marks
Verify that the private key is stored in the Pageant agent. Right-click the Pageant icon in the
system tray and select View Keys.

Tanner™ and Linux-Based Tools Setup, v2019.2 31

Note - Viewing PDF files within a web browser causes some links not to function. Use HTML for full navigation.
Troubleshooting
Pageant has 0 SSH-2 keys

Related Topics
Creating the Public/Private SSH Key Pair
Adding the Private Key to Pageant

Pageant has 0 SSH-2 keys


The error “Pageant has 0 SSH-2 keys” occurs when the private key is not stored in the Pageant
agent.
Solution
Add the private key to the Pageant authentication agent.

Related Topics
Adding the Private Key to Pageant

SSH Connection Exited


The “ssh connection exited” error can occur if the permissions are not read-write-executable for
the $HOME and $HOME/.ssh directories on the Linux machine that hosts the Calibre, Oasys-
RTL, Nitro-SOC, or AFS tools:
• The $HOME directory cannot grant all permissions to all users.
• The $HOME/.ssh directory must allow permissions only to the user who is the owner of
the directory.
Solution
Log in to the Linux machine.

Verify $HOME/.ssh Directory Permissions


Type the following at the command prompt to determine the permissions for the $HOME/.ssh
directory:

ls -ld $HOME/.ssh

A line similar to the following is displayed, in which “drwx------” indicates the permissions:

drwx------ 2 user1 grp2 4096 Oct 22 12:32 .ssh/

If the permissions are not “drwx-----,” type the following command to make the permissions
read-write-executable:

chmod 700 $HOME/.ssh

32 Tanner™ and Linux-Based Tools Setup, v2019.2

Note - Viewing PDF files within a web browser causes some links not to function. Use HTML for full navigation.
Troubleshooting
SSH Connection Timed Out Waiting for Worker

Verify $HOME Directory Permissions


Type the following at the command prompt to determine the permissions for the $HOME
directory:

ls -ld $HOME

A line similar to the following is displayed, in which “drwxr-xr-x” indicates the permissions:

drwxr-xr-x 139 user1 grp2 28672 May 6 14:40 /home/user1/

Permissions of “drwxrwxrwx” cause key authentication to fail. Type the following at the
command prompt to set the permissions to “drwxr-xr-x”:

chmod 755 $HOME

Calibre Tool Only


If the error occurs during a Calibre nmLVS run and you are using the S-Edit tool to export a
source SPICE netlist, check the view type that is open in S-Edit. Not all views in the S-Edit tool
permit the export of SPICE. In particular, do not have a symbol view active in the S-Edit tool
when performing LVS.

SSH Connection Timed Out Waiting for Worker


Incorrect permissions for the $HOME/.ssh/authorized_keys file on the Linux machine can cause
the “SSH connection exited - Timed out waiting for evi_worker” or “SSH connection exited -
Timed out waiting for nitro_worker” errors. The file must allow permissions only to the owner
of the file.
Solution
Type the following at the command prompt to determine the permissions for the $HOME/.ssh/
authorized_keys file:

ls -l $HOME/.ssh/authorized_keys

A line similar to the following appears, in which “rwx” indicates the permissions for the owner
of the file:

-rwx------ 1 jdoe grp2 398 Feb 10 15:35 /home/jdoe/.ssh/authorized_keys

If the permissions are not “-rwx------,” type the following command to make the permissions
read-write-executable for only the owner of the file:

chmod 700 $HOME/.ssh/authorized_keys

Tanner™ and Linux-Based Tools Setup, v2019.2 33

Note - Viewing PDF files within a web browser causes some links not to function. Use HTML for full navigation.
Troubleshooting
“Server refused our key” from Shell

“Server refused our key” from Shell


The “Server refused our key” error in the shell window can be caused by a malformed $HOME/
.ssh/authorized_keys file or incorrect permissions for the $HOME directory or the $HOME/.ssh/
authorized_keys file.
Solution
Malformed $HOME/.ssh/authorized_keys File
The contents of the $HOME/.ssh/authorized_keys file must meet the following criteria:

• One line with no carriage returns


• Begins with “ssh-rsa” without quotation marks
• Ends with “tanner_linux_auth_key” without quotation marks
To verify the contents of the file, log in to the Linux machine and type the following at the
command prompt:

cat authorized_keys

The file contents are displayed. Verify that it begins with “ssh-rsa” and ends with
“tanner_linux_auth_key” without the quotation marks.

Type the following at the command prompt to verify that the file is one line:

wc -l authorized_keys

You should see the following line, in which the “1” indicates the file is one line:

1 authorized_keys

Incorrect Permissions for the $Home Directory or $HOME/.ssh/authorized_keys File


Refer to the following Related Topics.

Related Topics
SSH Connection Exited
SSH Connection Timed Out Waiting for Worker

Licensing Error
Errors in the MGLS_LICENSE_FILE environment variable or the state of the license server can
cause a licensing error.

34 Tanner™ and Linux-Based Tools Setup, v2019.2

Note - Viewing PDF files within a web browser causes some links not to function. Use HTML for full navigation.
Troubleshooting
Adding Inbound Rule to Fix Windows Firewall

Solution
Click the Setup icon from the appropriate toolbar in the L-Edit tool to open the Calibre Setup
Connection dialog box or Setup Tanner Digital Implementer Connection dialog box:

• Setup Calibre Connection —

• Setup Tanner Digital Implementer Connection —

Make sure the MGLS_LICENSE_FILE environment variable is entered correctly.

Check the status of your license server with the following instructions:

• License server on Linux — Log in to the Linux machine and type the following
command, in which <FlexNet_installation_dir> is the location of your FlexNet
installation:
<FlexNet_installation_dir>/bin/lmstat -c $MGLS_LICENSE_FILE

• License server on Windows — Type the following command:


C:\MentorGraphics\Licensing\LMUTIL.EXE lmstat -a -c
%MGLS_LICENSE_FILE%

Note
If you cut and paste, retype the -a -c options if they do not paste correctly.

Related Topics
Configuring the Calibre Integration
Configuring the Oasys-RTL or Nitro-SOC Integration
Configuring the AFS Integration
Adding Inbound Rule to Fix Windows Firewall

Adding Inbound Rule to Fix Windows Firewall


Adding an Inbound Rule to the Windows Firewall may be required for Mentor Graphics
licensing.
Procedure
1. Choose Control Panel > Windows Firewall > Advanced settings > Inbound
Rules > New Rule to add the rule to the Windows Firewall on the license server.
2. Click Program.

Tanner™ and Linux-Based Tools Setup, v2019.2 35

Note - Viewing PDF files within a web browser causes some links not to function. Use HTML for full navigation.
Troubleshooting
Adding Inbound Rule to Fix Windows Firewall

3. Specify the path to the Mgcld.exe file and select all the default settings.

4. Repeat Steps 1 though 3 for the file Lmgrd.exe.

36 Tanner™ and Linux-Based Tools Setup, v2019.2

Note - Viewing PDF files within a web browser causes some links not to function. Use HTML for full navigation.
Troubleshooting
Tool-Specific Troubleshooting

Tool-Specific Troubleshooting
The problems and solutions detailed in this section are specific to either the Calibre tool or the
Oasys-RTL and Nitro-SOC tools when connecting or running the Tanner tools with the Linux-
based tools.
"HELLO_NITRO ..." not Printed in Nitro Shell . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
“HELLOEVI ... evi_worker” Not Printed in Calibre Shell . . . . . . . . . . . . . . . . . . . . . . . 38
“Waiting for schematic” from Calibre Interactive nmLVS or PEX. . . . . . . . . . . . . . . . 38
Calibre Interactive Does Not Open . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39

"HELLO_NITRO ..." not Printed in Nitro Shell


If the message “HELLO_NITRO ... nitro_worker ...” does not appear in the Nitro shell, the
permissions or location of the nitro_worker file may be incorrect.
Solution
Verify nitro_worker Location and Permissions
Log in to the Linux machine that hosts the Nitro-SOC tool and type the following command to
verify the location and permissions of the nitro_worker file:

ls -l $HOME/bin/nitro_worker

A line similar to the following should be displayed:

-rwxrwxr-x 1 jdoe grp2 6902 Aug 20 2015 /home/jdoe/bin/nitro_worker

If the file is not found, follow the steps in “Configuring the Oasys-RTL or Nitro-SOC
Integration” on page 21 to copy the nitro_worker file to the Linux machine.

If the file permissions are not “-rwxrwxr-x,” type the following command to set the
permissions:

chmod 775 $HOME/bin/nitro_worker

Verify the nitro_worker Path in the Setup Tanner Digital Implementer Connection Dialog Box
Confirm that the Setup Tanner Digital Implementer Connection dialog box includes the correct
path to the nitro_worker file:

1. Open a design in the L-Edit tool.


2. Click Setup Tanner Digital Implementer Connection from the Nitro toolbar
( ). If the Nitro toolbar is not visible, right-click in the toolbar area and
choose Nitro.

Tanner™ and Linux-Based Tools Setup, v2019.2 37

Note - Viewing PDF files within a web browser causes some links not to function. Use HTML for full navigation.
Troubleshooting
“HELLOEVI ... evi_worker” Not Printed in Calibre Shell

If the “Hostname for Nitro” entry does not include the full path to the nitro_worker file
for your installation, correct the path.

“HELLOEVI ... evi_worker” Not Printed in Calibre


Shell
If the message “HELLOEVI … evi_worker” does not appear in the Calibre shell, the
permissions or location of the evi_worker file may be incorrect.
Solution
Verify evi_worker Location and Permissions
Log in to the Linux machine that hosts the Calibre tool and type the following command to
check the location and permissions of the evi_worker file:

ls -l $HOME/bin/evi_worker

A line similar to the following should be displayed:

-rwxrwxr-x 1 jdoe grp2 6902 Aug 20 2015 /home/jdoe/bin/evi_worker

If the file is not found, follow the steps in “Configuring the Calibre Integration” on page 17 to
copy the evi_worker file to the Linux machine.

If the file permissions are not “-rwxrwxr-x” type the following to set the permissions:

chmod 775 $HOME/bin/evi_worker

Verify evi_worker Path in the Setup Calibre Connection Dialog Box


Do the following to confirm that the Setup Calibre Connection dialog box includes the correct
path to the evi_worker file:

1. Open a design in the L-Edit tool.

2. Click Setup Calibre Connection from the Calibre toolbar ( ). If the


Calibre toolbar is not visible, right-click in the toolbar area and choose Calibre.
If the “Hostname for Calibre” field does not include the full path to the evi_worker file
for your installation, correct the path.

“Waiting for schematic” from Calibre Interactive


nmLVS or PEX
The Calibre Interactive run can hang with the pop-up message “Waiting for schematic” and the
message “Waiting for schematic viewer to export cell …”. If Cancel in the pop-up message
does not work, you can kill the Calibre Interactive process.

38 Tanner™ and Linux-Based Tools Setup, v2019.2

Note - Viewing PDF files within a web browser causes some links not to function. Use HTML for full navigation.
Troubleshooting
Calibre Interactive Does Not Open

Solution
If the S-Edit tool is open and a schematic is loaded, a large schematic may be taking a long time
to export. However, if you think that Calibre Interactive is hung, particularly if the S-Edit tool is
not open or a schematic is not loaded, click Cancel in the “Waiting for schematic” dialog box.

If Cancel does not work, use the following steps to determine the process id and terminate the
Calibre Interactive process:

Type the following at the Linux command prompt:

ps -e | grep cgi

A line similar to the following is displayed, in which “3631” is the process id:

jdoe 3631 0.2 10.1 468840 103476 ? Sl 14:38 0:02 /home/tanner/Tools/


aoi_cal_2015.4_24.16/pkgs/icv/pvt/cgi_app -gui -lvs

Use the kill command to terminate the process.

kill -9 <process_id>

For the above example, the command to kill the process is as follows:

kill -9 3631

Calibre Interactive Does Not Open


Problems with file permissions, directory paths, the DISPLAY variable, the CALIBRE_HOME
variable, and licensing can prevent Calibre Interactive invocation from the L-Edit session.
Solution
Verify the Integration
1. Open a design in the L-Edit tool.

Tanner™ and Linux-Based Tools Setup, v2019.2 39

Note - Viewing PDF files within a web browser causes some links not to function. Use HTML for full navigation.
Troubleshooting
Calibre Interactive Does Not Open

2. Test whether the integration is set up correctly by clicking Open Calibre Shell in the
Calibre toolbar ( ). The output should be similar to the following.

If you do not see the lines about successful Pageant authentication, refer to the topic
“Creating the Public/Private SSH Key Pair” on page 13 and ““Server refused our key”
from Shell” on page 34.
If you do not see the line containing HELLOEVI, refer to ““HELLOEVI ... evi_worker”
Not Printed in Calibre Shell” on page 38.
Verify Licensing
Refer to “Licensing Error” on page 34.

Verify the DISPLAY Variable


A system reboot can cause the DISPLAY variable to change. Log in to the Linux machine,
using a viewer rather than the PuTTY command window, and type the following command to
determine the display setting:

echo $DISPLAY

Make a note of the value for use in the Setup Calibre Connection dialog box.

Open a design in the L-Edit tool and click Setup Calibre Connection from the Calibre toolbar
( ). If the Calibre toolbar is not visible, right-click in the toolbar area and
choose Calibre.

40 Tanner™ and Linux-Based Tools Setup, v2019.2

Note - Viewing PDF files within a web browser causes some links not to function. Use HTML for full navigation.
Troubleshooting
Calibre Interactive Does Not Open

Confirm that the DISPLAY variable is defined correctly in the “User environment variables”
section. The value should match the return value from the “echo $DISPLAY” command.

Verify the CALIBRE_HOME Variable


To test that Calibre is installed correctly and the CALIBRE_HOME variable is set correctly,
type the following command at the Linux command prompt, in which $CALIBRE_HOME is
replaced with the CALIBRE_HOME value displayed in the Setup Calibre dialog box:

$CALIBRE_HOME/bin/calibre -version

For example, a corresponding command and Setup Calibre Connection dialog box follow:

/home/janedoe/tools/calibre_latest/bin/calibre -version

The command should return the Calibre banner text, including the version. If the banner does
not appear, verify that the Calibre tool is installed correctly and that the CALIBRE_HOME
environment variable is set correctly.

Tanner™ and Linux-Based Tools Setup, v2019.2 41

Note - Viewing PDF files within a web browser causes some links not to function. Use HTML for full navigation.
Troubleshooting
Calibre Interactive Does Not Open

42 Tanner™ and Linux-Based Tools Setup, v2019.2

Note - Viewing PDF files within a web browser causes some links not to function. Use HTML for full navigation.
Third-Party Information
Provides information on open source and third-party software that may be included in the Tanner product.

For third-party information, refer to Third-Party Software for Tanner Products.

Note - Viewing PDF files within a web browser causes some links not to function. Use HTML for full navigation.
Note - Viewing PDF files within a web browser causes some links not to function. Use HTML for full navigation.
End-User License Agreement
The latest version of the End-User License Agreement is available on-line at:
www.mentor.com/eula

IMPORTANT INFORMATION

USE OF ALL SOFTWARE IS SUBJECT TO LICENSE RESTRICTIONS. CAREFULLY READ THIS LICENSE
AGREEMENT BEFORE USING THE PRODUCTS. USE OF SOFTWARE INDICATES CUSTOMER’S COMPLETE
AND UNCONDITIONAL ACCEPTANCE OF THE TERMS AND CONDITIONS SET FORTH IN THIS AGREEMENT.
ANY ADDITIONAL OR DIFFERENT PURCHASE ORDER TERMS AND CONDITIONS SHALL NOT APPLY.

END-USER LICENSE AGREEMENT (“Agreement”)

This is a legal agreement concerning the use of Software (as defined in Section 2) and hardware (collectively “Products”)
between the company acquiring the Products (“Customer”), and the Mentor Graphics entity that issued the corresponding
quotation or, if no quotation was issued, the applicable local Mentor Graphics entity (“Mentor Graphics”). Except for license
agreements related to the subject matter of this license agreement which are physically signed by Customer and an authorized
representative of Mentor Graphics, this Agreement and the applicable quotation contain the parties’ entire understanding
relating to the subject matter and supersede all prior or contemporaneous agreements. If Customer does not agree to these
terms and conditions, promptly return or, in the case of Software received electronically, certify destruction of Software and all
accompanying items within five days after receipt of Software and receive a full refund of any license fee paid.

1. ORDERS, FEES AND PAYMENT.

1.1. To the extent Customer (or if agreed by Mentor Graphics, Customer’s appointed third party buying agent) places and Mentor
Graphics accepts purchase orders pursuant to this Agreement (each an “Order”), each Order will constitute a contract between
Customer and Mentor Graphics, which shall be governed solely and exclusively by the terms and conditions of this Agreement,
any applicable addenda and the applicable quotation, whether or not those documents are referenced on the Order. Any
additional or conflicting terms and conditions appearing on an Order or presented in any electronic portal or automated order
management system, whether or not required to be electronically accepted, will not be effective unless agreed in writing and
physically signed by an authorized representative of Customer and Mentor Graphics.

1.2. Amounts invoiced will be paid, in the currency specified on the applicable invoice, within 30 days from the date of such invoice.
Any past due invoices will be subject to the imposition of interest charges in the amount of one and one-half percent per month
or the applicable legal rate currently in effect, whichever is lower. Prices do not include freight, insurance, customs duties, taxes
or other similar charges, which Mentor Graphics will state separately in the applicable invoice. Unless timely provided with a
valid certificate of exemption or other evidence that items are not taxable, Mentor Graphics will invoice Customer for all
applicable taxes including, but not limited to, VAT, GST, sales tax, consumption tax and service tax. Customer will make all
payments free and clear of, and without reduction for, any withholding or other taxes; any such taxes imposed on payments by
Customer hereunder will be Customer’s sole responsibility. If Customer appoints a third party to place purchase orders and/or
make payments on Customer’s behalf, Customer shall be liable for payment under Orders placed by such third party in the event
of default.

1.3. All Products are delivered FCA factory (Incoterms 2010), freight prepaid and invoiced to Customer, except Software delivered
electronically, which shall be deemed delivered when made available to Customer for download. Mentor Graphics retains a
security interest in all Products delivered under this Agreement, to secure payment of the purchase price of such Products, and
Customer agrees to sign any documents that Mentor Graphics determines to be necessary or convenient for use in filing or
perfecting such security interest. Mentor Graphics’ delivery of Software by electronic means is subject to Customer’s provision
of both a primary and an alternate e-mail address.

2. GRANT OF LICENSE. The software installed, downloaded, or otherwise acquired by Customer under this Agreement, including any
updates, modifications, revisions, copies, documentation, setup files and design data (“Software”) are copyrighted, trade secret and
confidential information of Mentor Graphics or its licensors, who maintain exclusive title to all Software and retain all rights not
expressly granted by this Agreement. Except for Software that is embeddable (“Embedded Software”), which is licensed pursuant to
separate embedded software terms or an embedded software supplement, Mentor Graphics grants to Customer, subject to payment of
applicable license fees, a nontransferable, nonexclusive license to use Software solely: (a) in machine-readable, object-code form
(except as provided in Subsection 4.2); (b) for Customer’s internal business purposes; (c) for the term of the license; and (d) on the
computer hardware and at the site authorized by Mentor Graphics. A site is restricted to a one-half mile (800 meter) radius. Customer
may have Software temporarily used by an employee for telecommuting purposes from locations other than a Customer office, such as
the employee’s residence, an airport or hotel, provided that such employee’s primary place of employment is the site where the
Software is authorized for use. Mentor Graphics’ standard policies and programs, which vary depending on Software, license fees paid
or services purchased, apply to the following: (a) relocation of Software; (b) use of Software, which may be limited, for example, to
execution of a single session by a single user on the authorized hardware or for a restricted period of time (such limitations may be
technically implemented through the use of authorization codes or similar devices); and (c) support services provided, including
eligibility to receive telephone support, updates, modifications, and revisions. For the avoidance of doubt, if Customer provides any
feedback or requests any change or enhancement to Products, whether in the course of receiving support or consulting services,
evaluating Products, performing beta testing or otherwise, any inventions, product improvements, modifications or developments made
by Mentor Graphics (at Mentor Graphics’ sole discretion) will be the exclusive property of Mentor Graphics.
3. BETA CODE.

3.1. Portions or all of certain Software may contain code for experimental testing and evaluation (which may be either alpha or beta,
collectively “Beta Code”), which may not be used without Mentor Graphics’ explicit authorization. Upon Mentor Graphics’
authorization, Mentor Graphics grants to Customer a temporary, nontransferable, nonexclusive license for experimental use to
test and evaluate the Beta Code without charge for a limited period of time specified by Mentor Graphics. Mentor Graphics may
choose, at its sole discretion, not to release Beta Code commercially in any form.

3.2. If Mentor Graphics authorizes Customer to use the Beta Code, Customer agrees to evaluate and test the Beta Code under normal
conditions as directed by Mentor Graphics. Customer will contact Mentor Graphics periodically during Customer’s use of the
Beta Code to discuss any malfunctions or suggested improvements. Upon completion of Customer’s evaluation and testing,
Customer will send to Mentor Graphics a written evaluation of the Beta Code, including its strengths, weaknesses and
recommended improvements.

3.3. Customer agrees to maintain Beta Code in confidence and shall restrict access to the Beta Code, including the methods and
concepts utilized therein, solely to those employees and Customer location(s) authorized by Mentor Graphics to perform beta
testing. Customer agrees that any written evaluations and all inventions, product improvements, modifications or developments
that Mentor Graphics conceived or made during or subsequent to this Agreement, including those based partly or wholly on
Customer’s feedback, will be the exclusive property of Mentor Graphics. Mentor Graphics will have exclusive rights, title and
interest in all such property. The provisions of this Subsection 3.3 shall survive termination of this Agreement.

4. RESTRICTIONS ON USE.

4.1. Customer may copy Software only as reasonably necessary to support the authorized use. Each copy must include all notices
and legends embedded in Software and affixed to its medium and container as received from Mentor Graphics. All copies shall
remain the property of Mentor Graphics or its licensors. Except for Embedded Software that has been embedded in executable
code form in Customer’s product(s), Customer shall maintain a record of the number and primary location of all copies of
Software, including copies merged with other software, and shall make those records available to Mentor Graphics upon
request. Customer shall not make Products available in any form to any person other than Customer’s employees and on-site
contractors, excluding Mentor Graphics competitors, whose job performance requires access and who are under obligations of
confidentiality. Customer shall take appropriate action to protect the confidentiality of Products and ensure that any person
permitted access does not disclose or use Products except as permitted by this Agreement. Customer shall give Mentor Graphics
written notice of any unauthorized disclosure or use of the Products as soon as Customer becomes aware of such unauthorized
disclosure or use. Customer acknowledges that Software provided hereunder may contain source code which is proprietary and
its confidentiality is of the highest importance and value to Mentor Graphics. Customer acknowledges that Mentor Graphics
may be seriously harmed if such source code is disclosed in violation of this Agreement. Except as otherwise permitted for
purposes of interoperability as specified by applicable and mandatory local law, Customer shall not reverse-assemble,
disassemble, reverse-compile, or reverse-engineer any Product, or in any way derive any source code from Software that is not
provided to Customer in source code form. Log files, data files, rule files and script files generated by or for the Software
(collectively “Files”), including without limitation files containing Standard Verification Rule Format (“SVRF”) and Tcl
Verification Format (“TVF”) which are Mentor Graphics’ trade secret and proprietary syntaxes for expressing process rules,
constitute or include confidential information of Mentor Graphics. Customer may share Files with third parties, excluding
Mentor Graphics competitors, provided that the confidentiality of such Files is protected by written agreement at least as well as
Customer protects other information of a similar nature or importance, but in any case with at least reasonable care. Customer
may use Files containing SVRF or TVF only with Mentor Graphics products. Under no circumstances shall Customer use
Products or Files or allow their use for the purpose of developing, enhancing or marketing any product that is in any way
competitive with Products, or disclose to any third party the results of, or information pertaining to, any benchmark.

4.2. If any Software or portions thereof are provided in source code form, Customer will use the source code only to correct software
errors and enhance or modify the Software for the authorized use, or as permitted for Embedded Software under separate
embedded software terms or an embedded software supplement. Customer shall not disclose or permit disclosure of source
code, in whole or in part, including any of its methods or concepts, to anyone except Customer’s employees or on-site
contractors, excluding Mentor Graphics competitors, with a need to know. Customer shall not copy or compile source code in
any manner except to support this authorized use.

4.3. Customer agrees that it will not subject any Product to any open source software (“OSS”) license that conflicts with this
Agreement or that does not otherwise apply to such Product.

4.4. Customer may not assign this Agreement or the rights and duties under it, or relocate, sublicense, or otherwise transfer the
Products, whether by operation of law or otherwise (“Attempted Transfer”), without Mentor Graphics’ prior written consent and
payment of Mentor Graphics’ then-current applicable relocation and/or transfer fees. Any Attempted Transfer without Mentor
Graphics’ prior written consent shall be a material breach of this Agreement and may, at Mentor Graphics’ option, result in the
immediate termination of the Agreement and/or the licenses granted under this Agreement. The terms of this Agreement,
including without limitation the licensing and assignment provisions, shall be binding upon Customer’s permitted successors in
interest and assigns.

4.5. The provisions of this Section 4 shall survive the termination of this Agreement.

5. SUPPORT SERVICES. To the extent Customer purchases support services, Mentor Graphics will provide Customer with updates and
technical support for the Products, at the Customer site(s) for which support is purchased, in accordance with Mentor Graphics’ then
current End-User Support Terms located at http://supportnet.mentor.com/supportterms.

6. OPEN SOURCE SOFTWARE. Products may contain OSS or code distributed under a proprietary third party license agreement, to
which additional rights or obligations (“Third Party Terms”) may apply. Please see the applicable Product documentation (including
license files, header files, read-me files or source code) for details. In the event of conflict between the terms of this Agreement
(including any addenda) and the Third Party Terms, the Third Party Terms will control solely with respect to the OSS or third party
code. The provisions of this Section 6 shall survive the termination of this Agreement.

7. LIMITED WARRANTY.

7.1. Mentor Graphics warrants that during the warranty period its standard, generally supported Products, when properly installed,
will substantially conform to the functional specifications set forth in the applicable user manual. Mentor Graphics does not
warrant that Products will meet Customer’s requirements or that operation of Products will be uninterrupted or error free. The
warranty period is 90 days starting on the 15th day after delivery or upon installation, whichever first occurs. Customer must
notify Mentor Graphics in writing of any nonconformity within the warranty period. For the avoidance of doubt, this warranty
applies only to the initial shipment of Software under an Order and does not renew or reset, for example, with the delivery of (a)
Software updates or (b) authorization codes or alternate Software under a transaction involving Software re-mix. This warranty
shall not be valid if Products have been subject to misuse, unauthorized modification, improper installation or Customer is not in
compliance with this Agreement. MENTOR GRAPHICS’ ENTIRE LIABILITY AND CUSTOMER’S EXCLUSIVE
REMEDY SHALL BE, AT MENTOR GRAPHICS’ OPTION, EITHER (A) REFUND OF THE PRICE PAID UPON
RETURN OF THE PRODUCTS TO MENTOR GRAPHICS OR (B) MODIFICATION OR REPLACEMENT OF THE
PRODUCTS THAT DO NOT MEET THIS LIMITED WARRANTY. MENTOR GRAPHICS MAKES NO WARRANTIES
WITH RESPECT TO: (A) SERVICES; (B) PRODUCTS PROVIDED AT NO CHARGE; OR (C) BETA CODE; ALL OF
WHICH ARE PROVIDED “AS IS.”

7.2. THE WARRANTIES SET FORTH IN THIS SECTION 7 ARE EXCLUSIVE. NEITHER MENTOR GRAPHICS NOR ITS
LICENSORS MAKE ANY OTHER WARRANTIES EXPRESS, IMPLIED OR STATUTORY, WITH RESPECT TO
PRODUCTS PROVIDED UNDER THIS AGREEMENT. MENTOR GRAPHICS AND ITS LICENSORS SPECIFICALLY
DISCLAIM ALL IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
NON-INFRINGEMENT OF INTELLECTUAL PROPERTY.

8. LIMITATION OF LIABILITY. TO THE EXTENT PERMITTED UNDER APPLICABLE LAW, IN NO EVENT SHALL
MENTOR GRAPHICS OR ITS LICENSORS BE LIABLE FOR INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL
DAMAGES (INCLUDING LOST PROFITS OR SAVINGS) WHETHER BASED ON CONTRACT, TORT OR ANY OTHER
LEGAL THEORY, EVEN IF MENTOR GRAPHICS OR ITS LICENSORS HAVE BEEN ADVISED OF THE POSSIBILITY OF
SUCH DAMAGES. IN NO EVENT SHALL MENTOR GRAPHICS’ OR ITS LICENSORS’ LIABILITY UNDER THIS
AGREEMENT EXCEED THE AMOUNT RECEIVED FROM CUSTOMER FOR THE HARDWARE, SOFTWARE LICENSE OR
SERVICE GIVING RISE TO THE CLAIM. IN THE CASE WHERE NO AMOUNT WAS PAID, MENTOR GRAPHICS AND ITS
LICENSORS SHALL HAVE NO LIABILITY FOR ANY DAMAGES WHATSOEVER. THE PROVISIONS OF THIS SECTION 8
SHALL SURVIVE THE TERMINATION OF THIS AGREEMENT.

9. THIRD PARTY CLAIMS.

9.1. Customer acknowledges that Mentor Graphics has no control over the testing of Customer’s products, or the specific
applications and use of Products. Mentor Graphics and its licensors shall not be liable for any claim or demand made against
Customer by any third party, except to the extent such claim is covered under Section 10.

9.2. In the event that a third party makes a claim against Mentor Graphics arising out of the use of Customer’s products, Mentor
Graphics will give Customer prompt notice of such claim. At Customer’s option and expense, Customer may take sole control
of the defense and any settlement of such claim. Customer WILL reimburse and hold harmless Mentor Graphics for any
LIABILITY, damages, settlement amounts, costs and expenses, including reasonable attorney’s fees, incurred by or awarded
against Mentor Graphics or its licensors in connection with such claims.

9.3. The provisions of this Section 9 shall survive any expiration or termination of this Agreement.

10. INFRINGEMENT.

10.1. Mentor Graphics will defend or settle, at its option and expense, any action brought against Customer in the United States,
Canada, Japan, or member state of the European Union which alleges that any standard, generally supported Product acquired
by Customer hereunder infringes a patent or copyright or misappropriates a trade secret in such jurisdiction. Mentor Graphics
will pay costs and damages finally awarded against Customer that are attributable to such action. Customer understands and
agrees that as conditions to Mentor Graphics’ obligations under this section Customer must: (a) notify Mentor Graphics
promptly in writing of the action; (b) provide Mentor Graphics all reasonable information and assistance to settle or defend the
action; and (c) grant Mentor Graphics sole authority and control of the defense or settlement of the action.

10.2. If a claim is made under Subsection 10.1 Mentor Graphics may, at its option and expense: (a) replace or modify the Product so
that it becomes noninfringing; (b) procure for Customer the right to continue using the Product; or (c) require the return of the
Product and refund to Customer any purchase price or license fee paid, less a reasonable allowance for use.

10.3. Mentor Graphics has no liability to Customer if the action is based upon: (a) the combination of Software or hardware with any
product not furnished by Mentor Graphics; (b) the modification of the Product other than by Mentor Graphics; (c) the use of
other than a current unaltered release of Software; (d) the use of the Product as part of an infringing process; (e) a product that
Customer makes, uses, or sells; (f) any Beta Code or Product provided at no charge; (g) any software provided by Mentor
Graphics’ licensors who do not provide such indemnification to Mentor Graphics’ customers; (h) OSS, except to the extent that
the infringement is directly caused by Mentor Graphics’ modifications to such OSS; or (i) infringement by Customer that is
deemed willful. In the case of (i), Customer shall reimburse Mentor Graphics for its reasonable attorney fees and other costs
related to the action.

10.4. THIS SECTION 10 IS SUBJECT TO SECTION 8 ABOVE AND STATES THE ENTIRE LIABILITY OF MENTOR
GRAPHICS AND ITS LICENSORS, AND CUSTOMER’S SOLE AND EXCLUSIVE REMEDY, FOR DEFENSE,
SETTLEMENT AND DAMAGES, WITH RESPECT TO ANY ALLEGED PATENT OR COPYRIGHT INFRINGEMENT
OR TRADE SECRET MISAPPROPRIATION BY ANY PRODUCT PROVIDED UNDER THIS AGREEMENT.

11. TERMINATION AND EFFECT OF TERMINATION.

11.1. If a Software license was provided for limited term use, such license will automatically terminate at the end of the authorized
term. Mentor Graphics may terminate this Agreement and/or any license granted under this Agreement immediately upon
written notice if Customer: (a) exceeds the scope of the license or otherwise fails to comply with the licensing or confidentiality
provisions of this Agreement, or (b) becomes insolvent, files a bankruptcy petition, institutes proceedings for liquidation or
winding up or enters into an agreement to assign its assets for the benefit of creditors. For any other material breach of any
provision of this Agreement, Mentor Graphics may terminate this Agreement and/or any license granted under this Agreement
upon 30 days written notice if Customer fails to cure the breach within the 30 day notice period. Termination of this Agreement
or any license granted hereunder will not affect Customer’s obligation to pay for Products shipped or licenses granted prior to
the termination, which amounts shall be payable immediately upon the date of termination.

11.2. Upon termination of this Agreement, the rights and obligations of the parties shall cease except as expressly set forth in this
Agreement. Upon termination of this Agreement and/or any license granted under this Agreement, Customer shall ensure that
all use of the affected Products ceases, and shall return hardware and either return to Mentor Graphics or destroy Software in
Customer’s possession, including all copies and documentation, and certify in writing to Mentor Graphics within ten business
days of the termination date that Customer no longer possesses any of the affected Products or copies of Software in any form.

12. EXPORT. The Products provided hereunder are subject to regulation by local laws and European Union (“E.U.”) and United States
(“U.S.”) government agencies, which prohibit export, re-export or diversion of certain products, information about the products, and
direct or indirect products thereof, to certain countries and certain persons. Customer agrees that it will not export or re-export Products
in any manner without first obtaining all necessary approval from appropriate local, E.U. and U.S. government agencies. If Customer
wishes to disclose any information to Mentor Graphics that is subject to any E.U., U.S. or other applicable export restrictions, including
without limitation the U.S. International Traffic in Arms Regulations (ITAR) or special controls under the Export Administration
Regulations (EAR), Customer will notify Mentor Graphics personnel, in advance of each instance of disclosure, that such information
is subject to such export restrictions.

13. U.S. GOVERNMENT LICENSE RIGHTS. Software was developed entirely at private expense. The parties agree that all Software is
commercial computer software within the meaning of the applicable acquisition regulations. Accordingly, pursuant to U.S. FAR 48
CFR 12.212 and DFAR 48 CFR 227.7202, use, duplication and disclosure of the Software by or for the U.S. government or a U.S.
government subcontractor is subject solely to the terms and conditions set forth in this Agreement, which shall supersede any
conflicting terms or conditions in any government order document, except for provisions which are contrary to applicable mandatory
federal laws.

14. THIRD PARTY BENEFICIARY. Mentor Graphics Corporation, Mentor Graphics (Ireland) Limited, Microsoft Corporation and
other licensors may be third party beneficiaries of this Agreement with the right to enforce the obligations set forth herein.

15. REVIEW OF LICENSE USAGE. Customer will monitor the access to and use of Software. With prior written notice and during
Customer’s normal business hours, Mentor Graphics may engage an internationally recognized accounting firm to review Customer’s
software monitoring system and records deemed relevant by the internationally recognized accounting firm to confirm Customer’s
compliance with the terms of this Agreement or U.S. or other local export laws. Such review may include FlexNet (or successor
product) report log files that Customer shall capture and provide at Mentor Graphics’ request. Customer shall make records available in
electronic format and shall fully cooperate with data gathering to support the license review. Mentor Graphics shall bear the expense of
any such review unless a material non-compliance is revealed. Mentor Graphics shall treat as confidential information all information
gained as a result of any request or review and shall only use or disclose such information as required by law or to enforce its rights
under this Agreement. The provisions of this Section 15 shall survive the termination of this Agreement.

16. CONTROLLING LAW, JURISDICTION AND DISPUTE RESOLUTION. The owners of certain Mentor Graphics intellectual
property licensed under this Agreement are located in Ireland and the U.S. To promote consistency around the world, disputes shall be
resolved as follows: excluding conflict of laws rules, this Agreement shall be governed by and construed under the laws of the State of
Oregon, U.S., if Customer is located in North or South America, and the laws of Ireland if Customer is located outside of North or
South America or Japan, and the laws of Japan if Customer is located in Japan. All disputes arising out of or in relation to this
Agreement shall be submitted to the exclusive jurisdiction of the courts of Portland, Oregon when the laws of Oregon apply, or Dublin,
Ireland when the laws of Ireland apply, or the Tokyo District Court when the laws of Japan apply. Notwithstanding the foregoing, all
disputes in Asia (excluding Japan) arising out of or in relation to this Agreement shall be resolved by arbitration in Singapore before a
single arbitrator to be appointed by the chairman of the Singapore International Arbitration Centre (“SIAC”) to be conducted in the
English language, in accordance with the Arbitration Rules of the SIAC in effect at the time of the dispute, which rules are deemed to be
incorporated by reference in this section. Nothing in this section shall restrict Mentor Graphics’ right to bring an action (including for
example a motion for injunctive relief) against Customer in the jurisdiction where Customer’s place of business is located. The United
Nations Convention on Contracts for the International Sale of Goods does not apply to this Agreement.

17. SEVERABILITY. If any provision of this Agreement is held by a court of competent jurisdiction to be void, invalid, unenforceable or
illegal, such provision shall be severed from this Agreement and the remaining provisions will remain in full force and effect.

18. MISCELLANEOUS. This Agreement contains the parties’ entire understanding relating to its subject matter and supersedes all prior
or contemporaneous agreements. Any translation of this Agreement is provided to comply with local legal requirements only. In the
event of a dispute between the English and any non-English versions, the English version of this Agreement shall govern to the extent
not prohibited by local law in the applicable jurisdiction. This Agreement may only be modified in writing, signed by an authorized
representative of each party. Waiver of terms or excuse of breach must be in writing and shall not constitute subsequent consent, waiver
or excuse.

Rev. 170330, Part No. 270941

You might also like