Signalintegrity

Latest version: v1.4.1

Safety actively analyzes 682387 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 3 of 6

1.1.13

Summary
Fixed a major bug in the analytical transmission line models and introduced the HSpice W element.

Bug Fixes
Transmission Line Model
While looking at W elements, I found a mistake I had made in the definition of how skin-effect resistance is treated (and unfortunately it's wrong in my book). The error is that I had used Z=Rse*sqrt(f) for the skin effect impedance. In fact, it is Z=Rse*(1+j)*sqrt(f). Changing this was quite invasive, as it affected transmission line model fitting and numerous test results. I also, after careful looking, found that the treatment of the DC point was also incorrect. When computing the analytical transmission line, now, when we compute Zc=sqrt(Z/Y) and Y is zero, we simply return a model of a line with only a series impedance Z. This is the correct treatment.
Features
Simulation of projects from scripts
Previously, scripts utilizing simulation projects had to write the waveforms to a file, that the project that would then read in. Now, hooks have been added for the script to insert the waveform into the simulation, which speeds things up a lot.
S-parameter viewer
Now, when s-parameters are viewed with more than nine ports, the buttons are formatted better to see the selections.
PRBS generation
Previously, when you select a PRBS polynomial, the bits for the entire polynomial are generated, and then the bits are chosen from the waveform. This is actually impossible for large PRBS polynomial values as the application runs out of memory (and it takes a ridiculous amount of time). Now, only the number of bits needed are created. This has a side effect that the end of the pattern is actually the bits computed wrapped around, which is not good, but the behavior is highly preferable to what was there before.
W element
The W element has been added to scripted solutions only. The W element is very useful for simulating large sets of distributed transmission lines that are interacting with each other. In the future, this will be modified to be more amenable to the UI and a UI implementation will be added.

See [Installation](https://github.com/TeledyneLeCroy/SignalIntegrity/wiki/Installation) for installation instructions.

1.1.12

Bug Fixes

Fixed a very annoying bug that is worthy of a release regarding different disk letters on Windows machines

On windows machines (unlike on Linux), the path contains a drive letter. SignalIntegrity tries to maintain everything with a relative path so that the projects are portable. All of this failed when using a drive other than c: and when referencing files across drives. I believe this is all fixed. In the fix, the preferences file will always be read from a path in the c drive, which I believe must always be present.

Minor bug fix in unit tests
A warning is now fixed in the fitting tests.

See [Installation](https://github.com/TeledyneLeCroy/SignalIntegrity/wiki/Installation) for installation instructions.

1.1.11

There's not a lot new in this release. It's just been awhile, so I figured I'd release the changes.
Grids
You can now specify whether grids are shown in the s-parameter viewer and simulator dialogs. Thanks to some work by eldarkg .
Bug Fixes
Network Analyzer
This didn't work properly when projects were nested hierarchically and they were in different directories. This is now fixed.
Documentation Error
Fixed a minor documentation error in the software documentation. Thanks to barnetto for pointing this out.


See [Installation](https://github.com/TeledyneLeCroy/SignalIntegrity/wiki/Installation) for installation instructions.

1.1.10

See [Installation](https://github.com/TeledyneLeCroy/SignalIntegrity/wiki/Installation) for installation instructions.

Network Analyzers
The main theme of this release is network analyzer calibration and measurements. Previously, this was the last unexposed element in the library SignalIntegrity.Lib that was not usable through the GUI. This release makes network analysis not only completely scriptable, but solvable through projects created in SignalIntegrity.App.
Using the SignalIntegrity GUI, users can define calibrations of their network analyzer by supplying raw measurements of standards to generate calibration files (network analyzer error terms). Then, in another project, users can import these error terms and convert uncalibrated s-parameter measurements into calibrated s-parameter measurements. This is all documented in the help system.
And, as with the other capabilities, like s-parameter generation, de-embedding, simulation, etc, that have a GUI based method, the calibration and generation of calibrated measurements can all be performed easily using scripting and straightforward netlists.
To facilitate all of this, several new devices were created and made available in the GUI:
- Short, Open, Load, Thru standards
- Reflect and Thru measurements -- for providing the calibration measurements
- Network Analyzer -- for producing calibrated s-parameter measurements

The calibrations are quite capable and offer:
- Standard SOLT calibration
- SOLR calibration (or unknown thru calibration)
- Overconstrained solutions (like sliding load)
- Thru calibrations with reduced number of thru connections
- Any number of ports supported
F0 added to calibration standards
In the process, the loss frequency ![f_0](https://render.githubusercontent.com/render/math?math=f_0) was added to the standard definitions.
Error-terms Viewing in S-Parameter Viewer
The s-parameter viewer now supports the viewing of network analyzer calibration files, with the error terms annotated in the button selections. The ability to select between multiple s-parameters was added.
Improvements
Software Documentation Available in Help
Not only was the online software documentation completely updated, it is now available in the SignalIntegrity GUI so it can be accessed more easily.
Netlist Improvements
The netlists have been improved to employ engineering notation with exponents where appropriate. Previously, these were just large numbers without exponents.
Ask Open File Extensions
With the ability to support multiple extensions, when you open a file, some improvements were made so it starts with a better suggestion at the extension.
Matrix Class Removal
With Python 3.x, the buffoons that meet and discuss what is the right and wrong way to write Python code have determined that it is wrong to use the matrix class in numpy. So, in order to get everyone to write less readable code not using the matrix class, they introduced a deprecation warning that fires continuously, especially when running the tests. These had the desired effect and I got so tired of seeing this that I submitted, making all of the code less readable, but no longer using the matrix class.
Significant Digits in S-parameter Files
One user complained that the resolution of the s-parameter files is not fine enough (it's six digits meaning -120 dB). I personally think this enough and am not in favor of further bloating my disk with insignificant digits, but now offer a preference that lets you change the number of digits. Changing this number to 10, would take this to -200 dB, surely enough. In the future, maybe exponents will be used, but not for now.
12458 Sequence in Calculation Properties
The calculation properties have always locked the user to a 12458 sequence. This means that if entered 65.2345 GHz as an end frequency, it would change this to 80 GHz (the next higher value in the 12458 sequence). Sometimes, one really needs to enter the numbers exactly, so in the preferences, the user can disable this locking.
Tool Tips
Hovering over the toolbar elements now reveals, through a tooltip, what the button actually does. It's very nice.
Simulation Waveforms
In simulation results, there is now the ability to turn on and off waveforms being displayed.
Double Click for Selecting Parts
Now, in the part picker, one can simply double click on the desired part. Previously, one had to press an okay button.
Device Edits in Headless Projects
Some helper functions were added to improve the ability to edit device properties when project files are opened in scripts.
Bug Fixes
The bug fixes are not very note-worthy and probably not noticeable, but are listed anyway.
Devices with Spaces in Name or Path
if a device references an s-parameter file or project with spaces in the name or path, these are now correctly utilized. Previously, they produced the right results, but could not be previewed from the properties dialog.
Documentation Updates
The documentation system, both the software documentation and help was completely updated. While it has been kept mostly up to date, a large effort was placed in this release. While it can't be promised that everything is perfect, the effort made was really to completely update and document all of the necessary code and features.
Caching Fixes
_SignalIntegrity_ allows virtually unlimited depth of nesting projects hierarchically. This stressed the results caching system that tries to avoid recalculation of things. This has been completely overhauled and the belief is that this now works perfectly. It now uses recursion to check whether recalculation is necessary.
Upgraded Doxygen software documentation and improved rendering.
S-Parameter Viewer
Displaying s-parameters or transfer matrices turns on and off various features in the viewer. These features are held in the preferences, and strange side effects were found with respect to the preferences when switching back and forth between these types of displays. This is now resolved.
PyPlot
A failure do to missing PyPlot import has been fixed.
Add Net Names Activation
The command to add net names is now properly activated/deactivated depending on schematic state.

1.1.9

Features

Physicality Enforcements

Added reciprocity enforcement to s-parameter dialog, along with enforcing both causality and passivity simultaneously, and enforcing causality, passivity, and reciprocity simultaneously.

Bug Fixes

Issue 42 Touchstone 1.1 and Option String

When s-parameters are written to a file, the Touchstone specification specifies that the option string be in the following format:

<frequency unit> <parameter> <format> R <Z0>

The software was writing this with the parameter toke and format token in swapped order.

This does not cause a problem to most (and this tool, as the read function did not need to be modified), but it was found to cause a problem in some tools, and in any case, is a violation of the specification.

This is now fixed.

Matplotlib2tikz

These stopped working, unbeknownst to me because the owner of this package changed the name to tikzplotlib. Now we try both. The new one really works much better than the old one. Now, plots exported in tikz (pgfplots) format import and render very well in LaTeX.

Minor Bug Fixes

Current Probe Reference Designator

Previously, the default reference designator defaulted to "VO?", as if it were a voltage probe. It now defaults to "IO?".

Causality Violations

They were really not showing -- so a change was made to make them more properly visible.
Also, causality violations are now shown in the step view, as well.

**********************

See [Installation](https://github.com/TeledyneLeCroy/SignalIntegrity/wiki/Installation) for installation instructions.

1.1.8

The book that goes with this software, entitled ["S-parameters for Signal Integrity"](https://www.cambridge.org/core/books/sparameters-for-signal-integrity/2FD44B994CD054E4B844B358E8903A09) has finally been published!

Features

Net Names (38)

A user asked for the net names feature. Now you can add a net name part (or from the Add menu). You fill in the net name and attach it in the circuit like any other device (under the hood, it is a net name device). Then, anywhere else in the circuit with a net name with the same name connected will be considered to be connected, just as if a wire were connecting them.

Note that there are not the normal restrictions (currently) in that you could name a net multiple names. _SignalIntegrity_ doesn't care about these aliases.

New Preferences

Plot Sizes in S-Parameter Viewer

To facilitate display of the s-parameter viewer on smaller screens, the user can now control the minimum (and starting):
* height of the plot (in inches?) defaults to 2
* width of the plot (in inches?) defaults to 5
* dots per inch (DPI) for the plot, defaults to 100 dpi.

The height was the really important one.

These are found in the preferences in the S-Parameter Viewer Window. The preferences that were originally in the normal preferences pertaining to the S-Parameter Viewer have alsow been moved here such as:

* plot color.
* whether to show the pan/zoom cursor values in the plots.

S-Parameter Viewer Zooms and Displays

Now, the selections of views for the s-parameter viewer along with the zoom joining rules are held in the preferences. This means that when they are changed, they become the default settings for the next viewing of s-parameters.

Ask File Save

A long time ago, the feature that asks whether you want to save a project file got so broken that when the preference to check this was selected, the code simply asked the question every time you tried to exit, whether the file was changed or not. This was not really a bug, but a conscious decision, after the code got too complicated. This is now fixed in a different manner. Now, when the preference is selected and the project file exited, a complete snapshot of the project file that would be written is compared to the previous one to determine whether to ask. Unfortunately, for old project files, it will ask whether you want to save whether or not you changed it until you have saved one with this version. This is because the ordering of the file is now enforced.

Undo

Panning of the schematic display can now be undone/redone.

HDMI Cable Measurement Examples

This year at the DesignCon conference, I stepped through an example of measuring an HDMI cable using a fixture and various de-embedding techniques. This example is now provided.

Start and Stop Time on Sine Sources

They now have a start and stop time. This was needed for examples of VNA dwell time.

Bug Fixes

Excess Inductance and Capacitance

I have proven that the previous code was overstating this by a factor of 2. This has been fixed.

Number of Network Parameters on Each Line of the Touchstone File (Issue 36)

Previously, each frequency points' data was provided on a single line. A user of the software notified me that this violates the touchstone specification and this was confirmed. This now conforms to the specification.

Post-Processing (Issue 35)

The post-processing feature was added in the last release, but it was found that it was being ignored in de-embedding projects that were included as parts. This has been fixed.

Spectral Content and Spectral Density Views

When these were shown for upsampled waveforms, the values were incorrect. This has been fixed.

**********************

See [Installation](https://github.com/TeledyneLeCroy/SignalIntegrity/wiki/Installation) for installation instructions.

Page 3 of 6

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.