Add start of tool-plugin section.
This commit is contained in:
@@ -25,6 +25,26 @@ Tool Plugins
|
||||
============
|
||||
|
||||
Hammer supports separatly managed plugins for different CAD tool vendors.
|
||||
The types of tools(in there hammer names) supported currently include:
|
||||
|
||||
* synthesis
|
||||
* par
|
||||
* drc
|
||||
* lvs
|
||||
* sram_generator
|
||||
* pcb
|
||||
|
||||
In order to configure your tool plugin of choice you will need to set several configuration variables.
|
||||
First you should select which specific tool you want to use by setting ``vlsi.core.<tool_type>_tool`` to the name of your tool.
|
||||
For example ``vlsi.core.par_tool: "innovus"``.
|
||||
You will also need to point hammer to the folder that contains your tool plugin by setting ``vlsi.core.<tool_type>_tool_path``.
|
||||
This directory should include a folder with the name of the tool as specified previously, which itself includes a python file ``__init__.py`` and a yaml file ``defaults.yml`` specifing the default values for any tool specific variables.
|
||||
In addition you can also customize the version of the tools you use by setting ``<tool_type>.<tool_name>.version`` to a tool specific string.
|
||||
Looking at the tools ``defaults.yml`` will inform you if there are other variables you would like to set for your use of this tool.
|
||||
|
||||
The ``__init__.py`` file should contain a variable, ``tool``, that points to the class implementing this tools Hammer support.
|
||||
This class should be a subclass of ``Hammer<tool_type>Tool``, which will be a subclass of ``HammerTool``.
|
||||
|
||||
|
||||
Technology Plugins
|
||||
==================
|
||||
@@ -37,4 +57,4 @@ Configuration
|
||||
|
||||
To configure a hammer flow the user needs to supply a yaml or json configuration file the chooses the tool and technology plugins and versions as well as any design specific configuration APIs.
|
||||
|
||||
You can see the current set of all avaialable Hammer APIs `here <https://github.com/ucb-bar/hammer/blob/master/src/hammer-vlsi/defaults.yml>`.
|
||||
You can see the current set of all avaialable Hammer APIs `here <https://github.com/ucb-bar/hammer/blob/master/src/hammer-vlsi/defaults.yml>`__.
|
||||
|
||||
Reference in New Issue
Block a user