Sigasi logo

Table Of Contents

Previous topic

Refactoring

Next topic

Integration with Modelsim

Support

Integration with external tools

Introduction

Sigasi HDT supports a number of ways to integrate external tools, with varying degrees of automation. The simplest case is to add a menu item to start an external tool from within Sigasi HDT. This is done by creating an external tool configuration. You can also arrange for an external tool to be run automatically when a Sigasi HDT project is rebuilt. This is done by creating a builder. Finally, Sigasi HDT supports automatic Makefile generation for completely automating the integration.

External Tools Configuration

Select Run ‣ External tools ‣ External Tools Configurations to get started, or use the externalTool-icon.

To create a new configuration, first select externalToolProgram, then click newConfiguration.

Enter all necessary information to start your external tool:

  • Name: The name for this configuration.
  • Location: The location of the executable. You can browse for programs and scripts in your workspace or programs on your file system.
  • Working Directory: The working directory for your program.
  • Arguments: The arguments, if any, to your program.

You can test your tool configuration with the Run button.

The following example screenshot shows how to set up configuration to run a simulate.sh script from within HDT.

../_images/tutorialConfiguration.png

The following example screenshot shows how to set up a configuration to run make clean on a Linux machine.

../_images/makeConfiguration.png

To run the external tool just select the configuration from the dropdown menu (black triangle) on the externalTool-icon. You can rerun the last configuration by simply clicking externalTool.

Creating a builder

An external tool configuration as described in the previous section makes it easy to run an external tool, but you still have to do so explicitly. For some programs, such as the make utility, it makes sense instead to do this automatically upon a change in your project. This functionality can be accomplished by a builder. We will show how to create a builder for a Modelsim Makefile as an example.

To create a builder, right-click your project and select Properties ‣ Builders.

Click New... and the builder configuration window will pop up:

../_images/Makefiles_buildersOverview0.png

You will be asked to select a configuration type: select externalToolProgram.

Next, configure the builder in a configuration window pop up window:

  • Name: The name of your builder, e.g. ModelSim.
  • Location: The location of the program, e.g. /usr/bin/make.
  • Working Directory: The working directory for your program. For example, click Browse Workspace... and select the root folder of your project.
  • Arguments: The arguments to your program, e.g. --makefile=Makefile.vsim all.
../_images/Makefiles_builderConfigurationMain.png

With the default settings the ModelSim Makefile will only be run during a manual build or after a “Clean”. To make sure Sigasi HDT runs make every time you save a change to a file, click the Build Options tab and check the During auto builds checkbox.

../_images/Makefiles_builderConfigurationOptions.png

After configuration, the new builder will appear in the builder list.

../_images/Makefiles_buildersOverview.png

When you close the builder configuration dialog windows, the new builder will automatically be run. In our example of a Modelsim Makefile, Modelsim’s messages will appear in the console view.

../_images/Makefiles_consoleOutput.png

For the specific case of Modelsim, warnings and error messages in the console are made clickable. When you click a message, the corresponding location will automatically be opened in the Editor view.

You can add as many extra builders as you want. This can be useful for additional linting tools or code generators.

Automatic makefile generation

With a builder as described in the previous section, a program such as make can run automatically whenever your project changes. However, when you make a significant change to your project, the makefile itself may become obsolete and require nontrivial changes. To solve this problem, Sigasi HDT can automatically create and update a makefile for you.

Sigasi HDT can generate makefiles for a number of targets, including Modelsim vsim, Xilinx Isim, and ghdl.

For example, to set up makefile generation for ModelSim, first verify that the ModelSim commands vcom and vlib are on your system path. Right-click on your project in the Project Explorer and select Properties. Makefile generation can be configured in the Makefiles category. Enable Mentor Modelsim (vsim) and confirm with Apply.

../_images/MakefilesPropertyPage.png

The makefile is generated when you perform a full rebuild of your project. Click Project ‣ Rebuild project to force this build. The Makefile.vsim should appear in the Project Explorer now.

In addition to the concrete targets, Sigasi HDT supports a generic csv target. This generates a file with a list of comma-separated design file information in the correct compile order. The file is automatically updated every time you perform a full build. You can use this file to write custom interface programs that extract the information and drive other EDA tools. With the csv target, you can optionally choose to include the files from external libraries.

Copyright © 2008-2011 Sigasi nv - "Sigasi" is a registered trademark of Sigasi nv