Yeah, many things, I'll talk about a little bit about what Angie Spice is, what it has
as new items and issues, and especially I will talk about a relatively conceptual simple
thing, but hopefully useful for some users.
I give a short introduction into the simulator.
I'll talk about what are expice code models and Angie Spice.
I'll talk about keycat supporting these code models.
I think this is my special development here.
There's some examples and also give some words on what's next in Angie Spice.
Yeah, so Angie Spice, but is it, is it a circuit simulator?
On the left, you have the circuit and the inverter and the middle, you have the input
to Angie Spice and that list, Spice, that list.
And the output is graphical or data or whatever you would like to have.
Net list input, this is old fashioned, people would like to have schematic entry, of course.
And so I was, Angie Spice itself does not have schematic entry.
And so I was happy when the keycat devs grabbed Angie Spice and plugged it into Iskima.
And so we have a keycat Angie Spice interface, and Iskima does schematic entry, generates
this Spice net list, and does a graphical representation of results.
And the data are shifted between Iskima and Angie Spice and Angie Spice is here,
it can be as a shared library, so it's loaded the module directly into Iskima.
Yeah, and this is the window, Iskima simulator, we know you have the circuit diagram.
Well, this is a simple oscillator with the Bicola transistor and some feedback and RC phase shift.
And you have the simulator window below, and the simulator window allows to define simulation types.
For example, here, you have a sequence of, it's called transient simulation, this is data or signals versus time.
And then to evaluate, we have an oscillator, you would like to see what kind of oscillation we have.
And so we have run an FFT, a fast Fourier transform, and we see this simulator output on the X-axis frequency.
And we see that it's not a pure sinusoidal signal, we get out many harmonics, but okay, this is what we want to learn.
Yeah, what is new in Angie Spice, current version is 44.2 from last from January 11th, we support very
look a compact device models and analog building blocks.
We allow co-simulation doing mixed signal simulation that is we have analog capability of Angie Spice, and we allow very
log digital circuits to be plugged in into Angie Spice after they have been compiled either with very later or with I very
very lot, I equals very lot. It's just two days old that we also have the interface to the VHDL, digital
description, VHDL, digital circuit descriptions will be compiled with DHDL, and then compiled into
a DHL or share library and then directly loaded into Angie Spice for simulation of both things together.
We also allow C-code models to be interface to Angie Spice, and we have some recent activities on degradation simulation.
Well, we know that when we run circuits, they will be great over time, time may be one year, 10 years or whatever.
You can't simulate for 10 years to see the results of degradation, so you have to have some models, some ideas to speed that up.
Okay, yeah, the examples I'm showing now, these are examples I've taken from friends or co-workers or from the web.
I'm not a circuit designer, so I'm not especially going to deeply into this.
Stefan Schippers, he's the author of the X-Scam graphical user interface for IC design. He did this tiny circuit, a very low A module, not complex device model, but just a small amplifier.
Yeah, we have learned where look A gives very short code, I think this is the output here, it's a amplifier that tangents a public was.
So, limited or saturated output voltage, we compile this with open path.
And then we have a module, a shared library, which can directly load it into Angie Spice, this is the accept of the Spice net least, adding this model.
And so if you have simple very low A descriptions, they have to be compatible to open path open path does not cover the whole very low A, but subset.
Then you can compile it and then run analog simulations within Angie Spice. Well, and this is the, I copied the web page from Stefan.
This is, again, the very low A net least, this is the tiny Angie Spice script to run the simulation, and this is the output graph, output voltage, input voltage, and this is the derivative and the amplification effect of 40, and this is to be found here somewhere in the model.
Okay, Angie Spice now allows to do very low of the HDL, so HDL, digital circuit blocks code simulated with analog circuit blocks.
Within Angie Spice, you have the digital simulator. The different simulation is event based is fast, because it's, it's not working on large matrices, but it's working on lists of events and list handling is fast.
We have the analog simulator, and of course we need some synchronization. So the next event is a breakpoint and the analog simulator simulates until this breakpoint and then switching happens and then moves up.
And we can use, as digital, we can use either the very low HDL input, but Angie Spice for a long time already has some internal event based simulation capability called X Spice, and we can use both, and we can mix things, and we use or can do that.
Yeah, and this is an example offered by Custon Wulf. He is very active in education, and there's a lot of nice YouTube videos, it took his example.
And this is an analog part, it's a current mirror with weight output, so can be used as a digital analog switch, but it has to be controlled here with the five digital inputs to switch on and off.
And the digital input is this very low thing, I think this is simply a counter, I think this one here is edit one and counting up, and then being reset again and counting up again.
Well, and if you do the simulation, you have the timing point and you get the analog output, if you do the co simulation.
If you want to know details about these, please have a look at the websites, it's given here, it can be downloaded, it can be run.
And the NG Spice interface to this digital stuff is a so-called code model, it's decosim, and this has been written by one of our developers, the GIS Edkinson.
And he recently enhanced this also to be used for real HDL digital code.
Yeah, okay, C code models, for example of a microcontroller, and if you look at this, you see this has been done in keycat, mixed signal simulation, this is a basic circuit with two switches and an inductor.
And this is a back converter converting high voltage to low voltage by adequate switching of these two devices and the storing the energy in the inductor.
Okay, and this simple switch is now controlled by a program from the microcontroller.
And the interface is here, you will go in with your input voltage, you will go in with the output voltage and you go in with the current measured here at this point.
And you control the switches with two outputs, we'll find here and somewhere else.
Okay, so this is concept development, you can do a simple things, this is not for PCB, these things are all non, non, no footprints, no nothing, this is just a simulator input.
With basic devices, over the simple switches, you could relate the stage replaces switches with transistors and you can learn about how to make this control, because this control has to get the feedback and has to have some control algorithms inside this can be digital.
Yeah, this is what he showed on his web page with his effect part of the key cut foam, you find it inside have to search a little bit.
Yeah, this is the simulation, the control signal and the output signal saturating at the voltage, hopefully six volt or so.
And obviously he did some breadboarding and some measurements and these are the measurements shown here with the output voltage, well rising similar some oscillations in the beginning and then stabilizing at the later point.
Yeah, so it is, yeah simple simulation of relatively complex things like DC DC converters.
Yeah, this is, it's not my hobby, in fact it's a project, first time that Angie Spice got some funding.
BNBF project called flow space where we cooperate with national German partners, IHP and others.
And we do degradation simulation.
The degradation simulation means that we put in models which allows to speed up the degradation because we can simulate for seconds or milliseconds not for years.
And then we can recalculate to show the degradation within one year or 10 years.
And this is a transistor output curve, if you know how to translate, this is a current output, the green one is before degradation and the red one is after degradation, so it goes down.
And at a certain point in time it goes down that much that the circuit sees is functioning and we want to figure out how will that happen.
This is a very simple circuit and oscillator, a ring oscillator, see more, a ring oscillator again green is before and the red is after stress.
And what you see here, FFT, this is a frequency before stress and this is a frequency after stress.
And so the frequency has gone down, that means drive capability of the inverters of the circuits has gone down and we have simulated that.
Okay, I want to talk about some elemental devices from X-Spice which are now used, made useful in N in T-Cat.
X-Spice is very old staff developed 30 years ago in the 90s.
Fully integrated into NG-Spice since it's beginning.
And X-Spice offers cold, so-called cold models, analog blocks and digital blocks.
Fully integrated as models into the NG-Spice simulator and we have more than 60 blocks available.
And we can make use of the fast digital simulation inside of NG-Spice.
Of course, then one, this X-D-Tate waveform and so on can decide slower simulation, analog faster simulation digital.
And users might create their own cold models with its C-code with using predefined macros.
Okay, I don't want to go too much into detail.
This is what the distribution of NG-Spice delivers.
We have these cold models and sources for analog, mixed, signal and digital complex.
Well, of course, we have the interface and the model for loading the code models.
And this is what then comes out, all these code models are integrated into shared libraries.
And this runs on all operating systems we are supporting and it's macOS and Linux and Windows.
And the NG-Spice executable may load cold models by command, cold model, cold model name.
And then it is in the simulator.
Why add support for these X-Spice models into C-Cat?
Well, the task is to create environment to do system simulation.
We want to use the flow, Hicat is key my NG-Spice simulation capability.
Facility at the use of these cold models have schematic entry at block level and to simplify creating these net lists.
Well, as I said, it's not linked to PCB design.
It is system evaluation design.
It may be combined with all the other features NG-Spice offers with the very low HDL interfaces just describes.
Well, these are the elemental devices we have right now, but this is just growing.
Well, I grabbed this one 13 input NG-8 because there was a simple 13 input NG-8 already available in C-Cat.
I found this nice and you may make use of it.
Well, we have the digital left.
We have analog on the upper right, and we have some, because I'm hired hybrid models.
For example, PWM with analog input and digital output, or oscillator with analog input digital output.
Yeah, and it's very simple to install these if you have an existing keycat installation.
It's offered in the forum, in the keycat forum, a file, and you have two files,
C-Cat symbols, the expice keycats symbols, and the expice models.
And if you put them into the same place where the standard symbols are in keycat,
then that's it.
Just add this to the Y-A symbol, add it to the symbol list, or the simple library list, and then you're done.
Well, simple example, multiplier, analog multiplier with two sinusoidal inputs.
And if you do it right, then you can simulate amplitude modulation, 100 kilohertz.
I've frequency signal, and one kilohertz, low frequency signal, and the output can be seen.
Very simple thing.
Last year I talked about this circuit, two kilowatt audio amplifier, digital amplifier, switched amplifier, class D.
And on the left there was this audio driver circuit, which has an analog input, pulse width modulation,
complementary push pull output.
It has to have a date time generation, not to switch both parentheses on at the same time,
because then you would create a lot of smoke, and it has to have high five voltage shift.
Okay. On the left there is the net list. I used to use that time two years ago,
and I had a look at this net list and the salt.
Well, it's difficult even for me to read it and to recapulate.
It's much easier if I create these blocks.
And this is the audio driver with the blocks I've just described.
Peter WM, a little bit of logic.
A date time generator, every time the signal switches, it creates a hundred nanosecond or fifty nanosecond.
And then the output drivers, which allow to drive the transistors and also switch the high voltage, all in a very simple fashion.
Yeah, and this is the result sinusoidal input.
And if you look at the output, well, here you don't see much, but if you enlarge this,
you can see the blue one is much larger than the red one.
It's a little around the zero, both are the same.
And on the right it's just the other way around.
Red is broad and blue is small.
Yeah, this is a thing.
Again, got from the kick out forum.
See glass, I don't know his name and detail.
He made this example.
Three equations on the left.
These three equations, some scientists has written them down.
They are named for chaos.
They allow chaos switching a simulation in the so-called logins attractor.
Well, and what is of interest, he made these with these symbols.
Yeah, for example, let's have a look at X.
The X output before integration.
This is what the X is, if you differentiate or before the integration.
Here you have an integrator.
And before you have a gain stage with a gain 10.
And you have a subtract symbol.
And it subtracts Y minus X.
Yeah, and this is, so you can, if you remember if you are as old as I am,
you remember analog computing.
And, well, this is analog computing simulated in a digital computer.
Yeah, this is the output.
Things turn around here with your simulation and suddenly switch and turn around here and switch back.
Yeah, in a chaotic fashion.
What's next in Angie Spice, some ideas.
We want to improve RF capability by adding harmonic balance.
It's ongoing and a project.
As well as the support for reliability and degradation simulation.
Simulation of transient noise is something circuit designers I see designers especially want to have.
And we will go to offer that hopefully.
On going thing is to improve usability and the interface between keycat and Angie Spice.
Some compatibility issues may be solved.
The digital interfaces, very log VHDL, C code are relatively new.
And more users should use them and test them.
And this is ongoing.
Yeah, and of course artificial intelligence has to be somehow named and mentioned.
And we have to figure out how to use this for improving McSignor simulation.
Well, just support, links and bet it.
Thank you, Ogre.
So questions.
Hello.
Is there any plans to improve the error messages to maybe make it smoother for people to get into Angie Spice?
Yeah, the question is, is there any plans to improve the error messages?
The Angie Spice returns and then keycat just transports.
It's not a plan, it's an ongoing thing.
I guess, well, this is the feedback we often get.
The error messages are cryptic or not useful.
One reason is that this is partially the old code.
Yeah, from times when user typed in a command.
And immediately, he got the error message.
Now, if you run scripts and automated simulations, the error message is somewhere.
Yeah, not useful because you don't know where does the error.
This is a thing we improve.
Sometimes it's difficult.
Sometimes it goes very deep into the simulator and we have to go back up again.
And yeah, and if you have something, just give us a note.
What to improve?
Thanks for the presentation.
I had a question.
So in my university, we're stuck at using Proteus because it has Arduino and pick my controller simulation.
So you can directly input the code for the microcontroller and simulate it inside of Proteus.
Is there any plans to integrate that into Angie Spice or is it out of the scope of the project?
The question is, can Angie Spice act like Proteus is doing in that you have a complete microcontroller, including software within the simulator?
There is no actual project on that.
We have to see what our digital interfaces allow us to do.
I think one just has to try and figure out when I have a microcontroller model, how can I link this?
Why are one of our interfaces to Angie Spice?
Currently, I'm not sure if there had been one example, a simple example, maybe it is possible.
It's up to the user to be adventurous and try it.
And then give feedback.
How do you intend to implement harmonic balance considering the fact that the resistive and reactive parts of each model are mixed together in Spice models?
I think one question is, indeed, how can we question is, how do we intend to integrate harmonic balance into Angie Spice concerning accessibility of models?
Some data, some details of the models.
With the C coded models, we have everything available.
With the very low A models, this is indeed not yet discussed finally, how to do that.
Maybe with your help, I don't know.
Because this is, we don't have access to all the internals we would need, I guess.
One more question, while we're getting the last question, we'll get the next speaker set up, please.
We have a last question.
What is the maturity of the very low simulation in Angie Spice?
I'm sorry, I did not guess.
What is the maturity of very low phase with X card on Angie Spice?
It's acoustically not, but what is the maturity of the very low simulation in Angie Spice?
The maturity.
Well, it's relatively new.
It's not that mature that the Angie Spice code, which is 30 years old, I think this is a standard right now.
We are very sure that the open path compiled very low A models are reliable.
We see it is already used.
For example, for the open source PDK's, IHP, uses a very low A model.
There will be tiny details probably, but if there has already been some improvement on feedback,
we use our concerning the open path compiler.
I'm optimistic because the open source PDK, IHP PDK, relies on very low A device models.
One more question, while we're setting up Alexander for the next talk.