This section describes how Xic can directly interface to the PyCell Studio example library and technology. PyCells from the library, or authored by the user, can be instantiated in Xic cells.
It will be assumed in this discussion that the PyCell Studio has been downloaded from Synopsys, and installed on your system, which also has Xic installed. The PyCell Studio works with Red Hat Enterprise Linux releases 5 and 6 (and equivalent). You must choose the same word size (32 or 64 bits) as your Xic installation. The installation location for PyCell Studio is selected by the user, and we will refer to this location as ``$CNI_ROOT''. For example, $CNI_ROOT might be /usr/local/ciranova.
Although your system will almost certainly have Python installed, it appears necessary to use the Python provided with the Studio. In Red Hat EL6, the Ciranova and stock Python version numbers are the same, but the libraries are apparently built with different options, and attempts at using the stock Python have failed (perhaps Synopsys will fix this?). You can, however, use your own OpenAccess installation if you have one and it is reasonably recent. You can probably also use OpenAccess from Cadence.
The first step is to make sure that the PyCell Studio installation is correct by following the steps in the $CNI_ROOT/quickstart/README.txt file.
Part of this procedure (step 3) is to source one of the startup files provided. This step sets the value of several environment variables, and forces the system to find the Ciranova Python instead of a local Python. It also installs the OpenAccess plug-in for Python. The user can customize this script if desired. It is necessary to source this file, or otherwise setup the environment as per the file, before starting Xic. After finishing, you will want to revert the environment to the previous state. Unfortunately, this is difficult. You may kill the window and start a new one.
A better way to run Xic in the Ciranova environment would be to write a script such as the following. Call it ``xic.cni''.
#! /bin/sh CNI_ROOT=/usr/local/ciranova source \$CNI_ROOT/quickstart/bashrc; xic -Tcni \$*
The CNI_ROOT line should be changed to the actual Ciranova installation location. After creating the file, make it executable with
chmod 755 xic.cni
Then, to run Xic in the Ciranova environment, just run this script instead. Since it runs in a sub-shell, the environment of the main shell is not corrupted. Any command line arguments are passed through.
Note that above Xic is started with a ``-Tcni'' option, which specifies to use the xic_tech.cni example technology file provided with Xic. This uses the ReadDRF and ReadCniTech directives to read display resource and technology files from the Ciranova installation. However, Ciranova provides a number of technology files, any you may want to try them. You will probably want to copy the xic_tech.cni file to your local directory, so that it can be edited easily.
Finally, you will need to set up your OpenAccess lib.defs to include the Ciranova libraries. The lib.defs file is a listing of the OpenAccess libraries available, very similar to the cds.lib file in Cadence. If no lib.defs file exists in the current directory, using a text editor create the file with a single line
INCLUDE path/to/ciranova/quickstart/lib.defsThe path/to/ciranova is the installation location, what we have called $CNI_ROOT. If there already is a lib.defs file, the line above should be added.
Once setup is complete, we can test it.
This should be enough to get started, have fun!