Skip to content

Some engineering tools that don't warrant their own repo but that do some useful stuff

Notifications You must be signed in to change notification settings

washburn24/Engineering-Tools

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Engineering Tools

Some engineering tools that don't warrant their own repo but that do some useful stuff

S-Parameter/Touchstone

tstclean.py removes garbage characters that some tools output in Touchstone S-parameter files to allow simulation engines like Keysight ADS to correctly import them. It currently does some soft checking to make sure the file is S Parameter format, but that could be removed to make it more general purpose.

tstscale.py lets you arbitrarily modify loss profiles in a simulation by scaling a fixed dataset in a Touchstone S-parameter file. For example you can build a 1.5m cable model from only vendor provided 1m or 2m data by linear loss scaling. Only really tested in cartesian formatted data files.

Cadence Allegro

pindelay.py converts English units to metric to make mixing of environments less error prone and more human readable in Cadence Allegro constraint manager. Input assumes Cadence formatted export file in mils, which appears to be what you get in 17.2 regardless of database settings.

cad2hyp.py converts Cadence Allegro board files to ascii for importing into Mentor Hyperlynx, working around a bug/license issue that kept the automated process from working correctly. This takes a .brd file as an input and just creates all the correct syntax for the ascii export.

Synopsys HSpice

hsp_runner.py runs between the user and HSpice from the command line to gracefully handle license in use errors to keep long batch simulations from dying. It derived from an intermittent network issue, but works for real license conflicts as well.

hsp_stimulus.py generates arbitrary bit pattern stimulus for simulations with optional enforcement of 8b/10b encoding. It supports jitter in both gaussian and sinusoidal profiles, written to test post processing algorithms with known jitter fingerprints but also works well in regular Spice style channel analysis.

PCI-SIG Seasim

seasim_clean.py cleans up simulation files and resampled .pkl model files when using the Seasim PCI Express channel simulator, for human readability and disk usage limiting. User controlled deletion criteria by age of files to keep more current results.

PCI-SIG SigTest

sigtest_run.py is a batch file runner for SigTest to process many waveform results at once. User provides the template file, the script does everything else.

sigtest_cleanup.py is a companion script to move image files to a subdirectory while editing the HTML files that point to them such that they still work. This makes the main directory cleaner and the image subdirectory doesn't need to be as human readable, since those images are linked to from HTML reports.

About

Some engineering tools that don't warrant their own repo but that do some useful stuff

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages