blob: e5303601907c19d0c015503d4c934338298c2d17 [file] [log] [blame]
Virtuoso
========
Virtuoso Device Library
-----------------------
The SKY130 PDK supports Virtuoso OpenAccess and has been tested with Virtuoso IC6.1.7-64b.500.15.
Virtuoso Environment Setup
--------------------------
A few environment variables must be set to load the SKY130 PDK in Cadence. Two examples for setting these variables are provided in the PDK and described below.
Module File Setup
~~~~~~~~~~~~~~~~~
Module files are a common technique for loading environment variables in a modular approach. An example module is provided in the directory $PDK_HOME/VirtuosoOA/examples/modules. The subdirectory s8 provides a module file s8phirs_10r.V1.3.0, which contains one section with site-specific environment variables:
.. code:: zsh
############################################
# Site-specific PDK Installation Variables #
############################################
setenv SW_PDK_ROOT /data/pdks/SkyWater
setenv PDK_HOME $env(SW_PDK_ROOT)/s8/V1.3.0
The $SW_PDK_ROOT variable must be customized for each site. Once this is set, all subsequent variable definitions should be correct. Note that the PDK version and METAL_STACK will be updated as appropriate in future releases.
To load the module, use the command module load s8/s8phirs_10r.V1.3.0”. Note that this module uses a separate module pdk_loaded to check if any other PDKs have been loaded. This module file is provided in the VirtuosoOA/examples/modules directory.
.cdsinit
^^^^^^^^
The .cdsinit file is automatically sourced by Cadence Virtuoso upon startup to load variables and settings.
This file also has several lines that can be used to set the variables $PDK_HOME and $METAL_STACK if required. Note that these lines have been commented out on the assumption that these will be loaded by the module.
This file also contains lines that set the default Spectre models.
Techfiles
~~~~~~~~~
User libraries can either attach to the existing technology library for s8phirs_10r, or they can compile their own techfile. The techfile for this technology is in $PDK_HOME/VirtuosoOA/techfiles/s8phirs_10r.tf.
The gds mapfile is in the technology library, $PDK_HOME/VirtuosoOA/libs/s8phirs_10r/s8phirs_10r.layermap.
Schematic Driven Layout / Layout XL
-----------------------------------
The V1.3.0 PDK supports schematic-driven layout with LayoutXL. Not all features of VirtuosoXL have been tested, nor have all device features been tested.