Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fixed some typos #1

Open
wants to merge 4 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
# SPiRA

The goal of SPiRA is develop a framework for IC designers to create and verify cicuit layouts. The framework uses a parameterized methodology that allows designers to generate PCells, apply rule checking, and LVS verification. The framework allows the following, though some parts are still under active development:
The goal of SPiRA is develop a framework for IC designers to create and verify circuit layouts. The framework uses a parameterized methodology that allows designers to generate PCells, apply rule checking, and LVS verification. The framework allows the following, though some parts are still under active development:

* **RDD**: The newly proposed Python-based PDK schema, called Rule Deck Database. This schema allows connecting directly to Python object trees for advance data manipulation.
* **PCells**: Layout generators can be created using basic Python. The framework focusses on reducing native Python boiler-plate code to improve design efficiency.
* **DRC** (experimental): Rule checking are done by placing parameter rescritions, and connecting to a Template Cell created defined in the RDD.
* **DRC** (experimental): Rule checking are done by placing parameter descriptions, and connecting to a Template Cell created defined in the RDD.
* **LVS** (experimental): A graph network can be extracted using a mesh-to-graph methodology.

## Depenencies
Expand Down
2 changes: 1 addition & 1 deletion demo/pdks/components/junction.py
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@


class Junction(spira.Cell):
""" Josephon Junction component for the AIST process. """
""" Josephson Junction component for the AIST process. """

metals = param.DataField(fdef_name='create_metal_layers')
contacts = param.DataField(fdef_name='create_contact_layers')
Expand Down
4 changes: 2 additions & 2 deletions demo/pdks/process/mitll_pdk/database.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,8 @@

# -------------------------------- Initialize ------------------------------------

RDD.name = 'MiTLL'
RDD.desc = 'Process fabrication data for the MiTLL process from the USA.'
RDD.name = 'MITLL'
RDD.desc = 'Process fabrication data for the MITLL process from the USA.'

# ---------------------------------- GDSII ---------------------------------------

Expand Down
4 changes: 2 additions & 2 deletions demo/projects/tutorials/ex1_database.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,8 @@
"One the most powerful functionalities of SPiRA is effectively connecting data to \n",
"cell instances. This examples shows how data from the defined RDD are connected\n",
"to a class using parameters. By connecting parameters to a class through a \n",
"field allows the given data to be intersepted and manipulated before fully \n",
"commiting it to the class instance."
"field allows the given data to be intercepted and manipulated before fully \n",
"committing it to the class instance."
]
},
{
Expand Down
2 changes: 1 addition & 1 deletion demo/projects/tutorials/ex3_shapes.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@
"## Demonstrates\n",
"\n",
"1. How to extend a shape by inheriting and calling `super()`.\n",
"2. How to move and rorate a shape.\n",
"2. How to move and rotate a shape.\n",
"3. How to merge the polygons in a shape.\n"
]
},
Expand Down
2 changes: 1 addition & 1 deletion demo/projects/tutorials/ex4_subcells.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
"# Subcells\n",
"\n",
"Cell references can be added to a cell using the `SRef` class. Created elementals can \n",
"also be wrapped with another class and commited to a cell as a subcell."
"also be wrapped with another class and committed to a cell as a subcell."
]
},
{
Expand Down
6 changes: 3 additions & 3 deletions demo/projects/tutorials/ex5_ports.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
"\n",
"Defining ports in a layout is done using the `create_ports` class method. \n",
"Ports are objects that connect vertically, such as vias, and terminals \n",
"are ports that connect horizontally. In this example a basic transmissionline \n",
"are ports that connect horizontally. In this example a basic transmission line \n",
"is created with two ports connected to the endpoints."
]
},
Expand All @@ -24,8 +24,8 @@
"4. Extend a cell using inheritance.\n",
"\n",
"Example `run_ports_1.py` shows how a cell can be extending using inheritance.\n",
"This is one of the functamental reasons for implementing the `create_` methods\n",
"in the SPiRA framework. It allows us to effectively segragate data members."
"This is one of the fundamental reasons for implementing the `create_` methods\n",
"in the SPiRA framework. It allows us to effectively segregate data members."
]
},
{
Expand Down
4 changes: 2 additions & 2 deletions docs/_build/html/_sources/rdd_schema.rst.txt
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ The following examples will illustrate each of the mentioned categories. First t

RDD = get_rule_deck()

RDD.name = 'MiTLL'
RDD.name = 'MITLL'

# Define new process tree.
RDD.METALS = ProcessTree()
Expand Down Expand Up @@ -99,7 +99,7 @@ by simply importing the specific process RDD file.
>>> from spira.rdd.settings import get_rule_deck
>>> RDD = get_rule_deck()
>>> RDD.name
'MiTLL'
'MITLL'
>>> from pdks import aist
>>> RDD.name
'AiST'
Expand Down
4 changes: 2 additions & 2 deletions docs/_build/html/_static/rdd_schema.rst
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ The following examples will illustrate each of the mentioned categories. First t

RDD = get_rule_deck()

RDD.name = 'MiTLL'
RDD.name = 'MITLL'

# Define new process tree.
RDD.METALS = ProcessTree()
Expand Down Expand Up @@ -99,7 +99,7 @@ by simply importing the specific process RDD file.
>>> from spira.rdd.settings import get_rule_deck
>>> RDD = get_rule_deck()
>>> RDD.name
'MiTLL'
'MITLL'
>>> from pdks import aist
>>> RDD.name
'AiST'
Expand Down
4 changes: 2 additions & 2 deletions docs/developers.rst
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ Developers
Documentation for developers for maintaining and extending. Extra information is added
to better understand specific code implementations.

Distribtuion
Distribution
------------

Uploading package to PyPi using *twine*.
Expand Down Expand Up @@ -48,7 +48,7 @@ Coding standards for parsing the correct docs is given in:

* https://github.com/numpy/numpy/blob/master/doc/HOWTO_DOCUMENT.rst.txt

Introduction to Python Virtual Enviroments:
Introduction to Python Virtual Environments:

* https://realpython.com/python-virtual-environments-a-primer/
* https://stackoverflow.com/questions/15746675/how-to-write-a-python-module-package
Expand Down
16 changes: 8 additions & 8 deletions docs/overview.rst
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ Overview
**SPiRA**: A parameterized design framework using Python in conjunction
with metaprogramming techniques to allow designers to create superconducting
and quantum parameterized circuits, while simultaneously checking for design
rule errors. Using this parameterized gdsii a new LVS methodology is proposed
rule errors. Using this parameterization of GDSII structures, a new LVS methodology is proposed
that follows a parameterized hierarchical approach to effectively detect layout
primitives and devices. A mesh-to-netlist algorithm is presented that extracts
a graph netlist from a circuit layout by first meshing the conducting polygons
Expand All @@ -31,11 +31,11 @@ coherent fashion. The `demo` folder is an example workspace. A workspace consist
parts:

* PDKs: Folder containing all the fabrication specific data.
* Projects: Folder containing the Python source file createed using SPiRA.
* Projects: Folder containing the Python source file created using SPiRA.

**PDKs**

The folder tree of the demo workspace for the pdks are as follows:
The folder tree of the demo workspace for the PDKs are as follows:

.. code-block:: bash

Expand Down Expand Up @@ -64,15 +64,15 @@ defined in the `pdks` folder.
|__ scripts
|__ tutorials

The *layouts* diretory contains hand-designed-layouts. The SPiRA framework can be used
to apply physical design verifiction methods on these layouts, such as DRC and LVS checks.
The *scripts* folder largly encapsulates layout generators, while the *tutorials* folder
The *layouts* directory contains hand-designed-layouts. The SPiRA framework can be used
to apply physical design verification methods on these layouts, such as DRC and LVS checks.
The *scripts* folder largely encapsulates layout generators, while the *tutorials* folder
contains extra data.

Each workspace is linked to a single fabrication process, but using mutliple
Each workspace is linked to a single fabrication process, but using multiple
fabs is also possible due to the simplicity of the workspace tree. In essence,
the workspace can have any structure given that the user compensates for
the necessary import changes. But it is highly adviced to use this structure.
the necessary import changes. But it is highly advised to use this structure.



2 changes: 1 addition & 1 deletion docs/parameters.rst
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ Constraints
Variables
---------

Variables are primitive parameters such as intergers and strings.
Variables are primitive parameters such as integers and strings.
The following variables are supported and initialized as shown.

* Integer
Expand Down
4 changes: 2 additions & 2 deletions docs/rdd_schema.rst
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ The following examples will illustrate each of the mentioned categories. First t

RDD = get_rule_deck()

RDD.name = 'MiTLL'
RDD.name = 'MITLL'

# Define new process tree.
RDD.METALS = ProcessTree()
Expand Down Expand Up @@ -99,7 +99,7 @@ by simply importing the specific process RDD file.
>>> from spira.rdd.settings import get_rule_deck
>>> RDD = get_rule_deck()
>>> RDD.name
'MiTLL'
'MITLL'
>>> from pdks import aist
>>> RDD.name
'AiST'
Expand Down
6 changes: 3 additions & 3 deletions spira/core/descriptor.py
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ class Via(spira.Cell):
__keywords__ = ['default', 'fdef_name', 'locked', 'doc']

def __init__(self, **kwargs):
self.__doc__ = 'No documenation generated'
self.__doc__ = 'No documentation generated'
if 'doc' in kwargs:
self.__doc__ = kwargs['doc']
kwargs.pop('doc')
Expand Down Expand Up @@ -54,7 +54,7 @@ def __field_was_stored__(self, obj):

def __get__(self, obj, type=None):
"""
Called when retieving a value from an instance.
Called when retrieving a value from an instance.
Following from `via` in __set__, the following
can be executed:

Expand All @@ -81,7 +81,7 @@ def __set__(self, obj, value):
"""
Store the value of the object keyword argument
in the __store__ variable of the instance. This
setter is calle from the FieldInitializer class.
setter is called from the FieldInitializer class.
This is called when creating a class instance:

self -> The Field being set.
Expand Down
4 changes: 2 additions & 2 deletions spira/gdsii/elemental/port.py
Original file line number Diff line number Diff line change
Expand Up @@ -167,7 +167,7 @@ def move(self, midpoint=(0,0), destination=None, axis=None):
return self

def stretch(self, stretch_class):
""" Stretch port by with the given strecth class. """
""" Stretch port by with the given stretch class. """
p = stretch_class.apply(self.midpoint)
self.midpoint = p
return self
Expand Down Expand Up @@ -204,7 +204,7 @@ def _update(self, name, layer):

class Port(PortAbstract):
""" Ports are objects that connect different polygons
or references in a layout. Ports represent veritical
or references in a layout. Ports represent vertical
connection such as vias or junctions.

Examples
Expand Down
2 changes: 1 addition & 1 deletion spira/gdsii/elemental/term.py
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
class Term(PortAbstract):
"""
Terminals are horizontal ports that connect SRef instances
in the horizontal plane. They typcially represents the
in the horizontal plane. They typically represents the
i/o ports of a components.

Examples
Expand Down
2 changes: 1 addition & 1 deletion spira/lpe/structure.py
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@

class ComposeMLayers(__CellContainer__):
"""
Decorates all elementas with purpose metal with
Decorates all elementals with purpose metal with
LCells and add them as elementals to the new class.
"""

Expand Down
2 changes: 1 addition & 1 deletion spira/rdd/technology.py
Original file line number Diff line number Diff line change
Expand Up @@ -151,7 +151,7 @@ def __repr__(self):
class DynamicDataTree(__DataTree__):
"""
A hierarchical tree for storing configuration settings,
but with delayed initialisation : the initialize-function
but with delayed initialization : the initialize-function
is called only at the moment a value is actually retrieved.
"""
def __init__(self, **kwargs):
Expand Down