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

Backannotation of simulation results #18

Open
pepijndevos opened this issue Sep 13, 2021 · 0 comments
Open

Backannotation of simulation results #18

pepijndevos opened this issue Sep 13, 2021 · 0 comments
Labels

Comments

@pepijndevos
Copy link
Collaborator

The plan is that the simulation backend talks to the CouchDB database to retrieve the schematic, simulate it, and write annotations back into the database. This means the simulation can run in Python, Julia, Rust, whatever. Most likely in Jupyter or Pluto

There needs to be a flexible, extensible, configurable, intuitive way to store and display simulation results inside the schematic. Some basic use cases:

Operating point simulation that annotates the results onto the nets and devices. These are simple numbers per device.

AC simulation that could annotate things like... bandwidth and other derived properties like phase margin. But these don't belong to a specific device.

Transient simulations could annotate the plotting color so that the schematic can use the plot color for a visual connection between wire/port and plotted results. These are per device, but rich data types, not just numbers.

You could even embed entire plots inside the schematic. You could go full https://falstad.com/circuit/ or have like mini icon-size plots, that give you an idea of the shape of the signal at that node, without "details" such as the axis.

So hmmm on the one hand the basic stuff is mostly per-device, which is neat. But maybe there needs to be a standalone "annotation" component? It would not be much different from any other custom component, and no reason the backend can't add components.

Maybe these should just be added in the same framework as device properties. In that they are visible in the device panel, and can be selected as visible, and have some metadata associated about how to parse and display them and such.

Would it be a flat list, or scoped per simulation? I think a flat list would mooostly work out fine, and make things easy for displaying and such. But maybe there are situations where you want to annotate, say the gm of different speed corners, in that case you'd want like ff/gm tt/gm and so forth. I guess you could leave it up to the backend to generate unique names.

But I think... it's important to not turn the schematic into a full fledged result viewer. Annotations are to provide context and aid design. Not an entire datasheet or full-sized interactive plot.

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

No branches or pull requests

1 participant