diff --git a/scripts/python-skywater-pdk/skywater_pdk/simulation/analog/fet.py b/scripts/python-skywater-pdk/skywater_pdk/simulation/analog/fet.py index 12e863ac0..c197d2157 100644 --- a/scripts/python-skywater-pdk/skywater_pdk/simulation/analog/fet.py +++ b/scripts/python-skywater-pdk/skywater_pdk/simulation/analog/fet.py @@ -17,6 +17,19 @@ # # SPDX-License-Identifier: Apache-2.0 + +"""Module for creating FET characteristics plots from bins.csv files. + +This module allows simulating FET cells and creating: + +* Id/W vs gm/Id +* fT vs gm/Id +* gm/gds vs gm/Id +* gm/Id vs Vgg + +plots based on different FET length and width values from bins.csv file. +""" + import PySpice.Logging.Logging as Logging from PySpice.Spice.Netlist import Circuit from PySpice.Unit import u_V @@ -235,7 +248,11 @@ def generate_fet_plots( def main(argv): import argparse - parser = argparse.ArgumentParser(prog=argv[0]) + parser = argparse.ArgumentParser( + prog=argv[0], + description=__doc__, + formatter_class=argparse.RawDescriptionHelpFormatter + ) parser.add_argument( 'corner_path', help='Path to corner SPICE file containing FET definition', diff --git a/scripts/python-skywater-pdk/skywater_pdk/simulation/analog/generate-fet-bins-plots.py b/scripts/python-skywater-pdk/skywater_pdk/simulation/analog/generate-fet-bins-plots.py index 018f94360..391de39c5 100644 --- a/scripts/python-skywater-pdk/skywater_pdk/simulation/analog/generate-fet-bins-plots.py +++ b/scripts/python-skywater-pdk/skywater_pdk/simulation/analog/generate-fet-bins-plots.py @@ -17,6 +17,14 @@ # # SPDX-License-Identifier: Apache-2.0 + +"""Creates plots for FET characteristics for FET cells in Skywater libraries. + +This script scans for FET cells in the Skywater PDK libraries and generates +the FET cells using methods from the fet submodule. +""" + + import argparse from pathlib import Path import sys @@ -28,7 +36,11 @@ def main(argv): - parser = argparse.ArgumentParser(prog=argv[0]) + parser = argparse.ArgumentParser( + prog=argv[0], + description=__doc__, + formatter_class=argparse.RawDescriptionHelpFormatter + ) parser.add_argument( 'libraries_dir', help='Path to the libraries directory of skywater-pdk', @@ -61,7 +73,9 @@ def main(argv): ) parser.add_argument( '--failed-inputs', - help='Path to files for which Symbolator failed to generate diagram', + help=('Path to an output file which will store all input filenames ' + + 'for which ngspice failed to simulate' + ), type=Path )