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

Changes to make it easier to use PySpice with a large archive of SPICE models #249

Merged
merged 9 commits into from May 10, 2021

Conversation

xesscorp
Copy link
Contributor

@xesscorp xesscorp commented Aug 7, 2020

I made some changes to PySpice to make it easier to work with this large archive of SPICE models and also with the Skywater PDK:

  • SpiceLibrary will continue to traverse root_path and parse files even after the parser finds errors in a library file.
  • search() method was added to SpiceLibrary to search and return a dict of all models/subcircuits having names that match a regular expression.
  • SpiceParser now accepts files that have no title line and start immediately with .model or .subckt statements.
  • To support the Skywater PDK, .spice was added to set of SPICE library file extensions.
  • If passed a path to a file, Directory.iter_file() will now return that file instead of None.
  • SpiceLibrary can now recurse into .include files to pull in an entire set of library files.
  • Named sections of libraries can now be specified for inclusion with other sections excluded.

xesscorp and others added 8 commits August 7, 2020 14:26
…s even after the parser finds errors in a library file.

* `search()` method was added to `SpiceLibrary` to search and return a dict of all models/subcircuits having names that match a regular expression.
* `SpiceParser` now accepts files that start immediately with `.model` or `.subckt` statements instead of a title line.
@FabriceSalvaire FabriceSalvaire changed the base branch from master to devel May 6, 2021 23:33
@FabriceSalvaire
Copy link
Collaborator

FabriceSalvaire commented May 6, 2021

The SkyWater Open Source PDK is a collaboration between Google and SkyWater Technology Foundry to provide a fully open source Process Design Kit and related resources, which can be used to create manufacturable designs at SkyWater’s facility.

@FabriceSalvaire FabriceSalvaire added this to the v1.5 milestone May 10, 2021
@FabriceSalvaire
Copy link
Collaborator

for ref.

2.7  .LIB General form:
. LIB filename libname

Examples:
. LIB / users / spice / common / mosfets . lib mos1

The .LIB statement allows including library descriptions into the input file. Inside the
*.lib file a library libname will be selected. The statements of each library inside the
*.lib file are enclosed in .LIB libname <...> .ENDL statements.

If the compatibility mode (16.14) is set to ’ps’ by set ngbehavior=ps (17.7) in spinit
(16.5) or .spiceinit (16.6), then a simplified syntax .LIB filename is available: a warning
is issued and filename is simply included as described in Chapt. 2.6.

@FabriceSalvaire FabriceSalvaire merged commit f85d6c8 into PySpice-org:devel May 10, 2021
@FabriceSalvaire
Copy link
Collaborator

thanks

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants