SIwave: Everything You Need to Know About the PI Solver
Welcome to this comprehensive guide on using the PI solver within SIwave, a tool designed for power integrity (PI) and signal integrity (SI) analysis. This document will walk you through the essential steps and considerations when using SIwave for PI analysis.
Introduction to Power Integrity Analysis
Power integrity analysis is crucial when a die or chip on a PCB withdraws variable current. While some components like power amplifiers and TIs withdraw constant current, most basic chips withdraw variable current, which includes a DC value and a spectrum of frequencies. Understanding the response of power planes across this spectrum is essential.
Getting Started with SIwave
- Upload a CAD file to SIwave. Note that while you can build your PCB using SIwave, it is not the recommended approach.
- Review and study your schematic thoroughly before starting. This preparation will save you time.
Working with Power Planes
In SIwave, all power planes are displayed in red, indicating they are treated differently during power integrity analysis. You can select and solve all power planes together, but it is often more effective to focus on one at a time.
Understanding Nets and Passive Links
SIwave identifies structures by their nets. A single net is an electrically connected structure without external components. When analyzing a power plane, identify its nets, which may be connected using resistors, inductors, or capacitors, forming what is known as a passive link.
Key Points:
- SIwave is a linear numerical tool that solves only passive links.
- Document all passive links and their nets in your schematic.
Setting Up and Running Simulations
- Assign ports to the selected nets for analysis.
- Configure the simulation settings, including frequency bands and solver options.
- Run the simulation by clicking "Simulate".
During setup, you can save your configuration for future use, especially helpful if you have multiple power planes and passive links.
Analyzing Results
Key Considerations:
- Normalize S-parameters to the correct impedance for reliable results.
- Use the Z matrix to focus on the real impedance of power planes, particularly Z11 and Z22.
Advanced Features:
- Add equivalent circuits to connections.
- Conduct sensitivity analysis to assess parameter sensitivity to component impedance changes.
- Compute equivalent RLGC subcircuits for power planes.
Exporting and Verifying Data
SIwave provides various export options, including:
- IBIS files for passive interconnection representation.
- Sentinel SSO netlists for other applications.
- SPICE models for use in SPICE programs.
Additionally, SIwave includes tools like the Network Data Explorer (NDE) and S-utility for further data verification and analysis.
Conclusion
SIwave offers a robust set of tools for power integrity analysis, from setting up simulations to analyzing and exporting data. By following the steps outlined in this guide, you can effectively use SIwave to ensure the reliability and performance of your PCB designs.
Thank you for exploring the capabilities of SIwave with us.
Hi, SIwave is a power integrity and signal integrity tool. Today we will be talking about the PI solver inside SIwave. We need to perform power integrity if one die or chip on the board withdraws variable current, such as drivers, power amplifiers, TIS, and many chips that withdraw constant current.
However, most basic chips withdraw variable current, which contains a DC value and a spectrum of frequencies. Consequently, we need to understand the response of the power network along the spectrum. You start working with SIwave by uploading a .s2p file.
Do not try to build your PCP using SIwave, although you can. It is not the right way to use it. You can upload the file using any of the forms shown in this table. Before you start using SIwave, it's highly recommended that you go through your schematic and study it well.
It will save you lots of time. We have a PCB board with many power planes. We can select them all and solve them all together. However, we will focus on only one of them. Notice that SIwave puts all power planes in red.
This is because it solves them and treats them in a different way when it solves for power integrity. The next few minutes are for people who are new to PI analysis and PI tools like SIwave. SIwave understands the language of nets.
When it uploads any structure, it looks for nets and what we call single nets. Single nets cannot be disconnected. When you want to analyze a power plane, you need to identify its nets. It could have just one net, or it could have many nets like the one you see here.
If there are many, they should be connected using resistors, inductors, or capacitors, or what we call passive components. This will construct what we call a passive link. If integrated or discrete components exist along the path, SIwave will treat the passive links separately.
SIwave is a linear numerical tool that solves only passive links. This is important for you to understand because it changes the way you read the schematic. When you read the schematic, you look for all the passive links in the power planes and document them.
After solving the model, if you have something like this that has two passive links, you cannot take the results and cascade the different passive links of a power plane using a circuit.
However, you can analyze a net or a passive link, but you cannot analyze two passive links with an integrated component in the middle. You have to treat this independently and this one independently.
When you upload SIwave from an ECAD, it uploads all kinds of information from your .s2p file, including the stack-up and the layer, all the information that exists there, the material, the stack-up, the thicknesses, all of this, plus the components, and all the connections between the different structures.
The only thing missing to do to be able to solve a problem is to assign ports. You click this button, get the introductory panel, click on PI, and the good thing about SIwave is that no matter what you want to do, it starts by selecting the solver you want to use.
Once you select the solver, SIwave opens a dialog box with as much information as possible. You need to review the assumptions that it made and fill up whatever is missing.
For our case, it presents a list of all the nets that exist in the board, whether they are power planes or even RF lines or control lines or anything. It provides them all and shows them in this section. Now, you want to select one power plane because you want to solve it. You need to assign ports.
Notice here that SIwave immediately populates the section with all the connections to the components, whether these are passive components or non-passive components.
You can hide what we call the parallel components, the RLC, using this button and are left with the ones that are in series or integrated components. For our case, we have a couple of integrated components that we are interested in analyzing, the connection between the voltage regulator and the CPU.
So, we put a port at the CPU and a port at the voltage regulator. We are analyzing something like this. You can save your setup specifically if you have so many power planes or passive links. For example, I did this. I have another passive link, and I can select it and also select ports.
When you do the setup, you select them one by one, and if you do this one, it doesn't mean that this one is still working. This is still activated. You can also display them all at once if you want and then assign ports, but it's better to go through them one by one, one net at a time.
Now, you do the configuration. Configuration simply means asking SIwave to assign ports and assign the necessary setup to start the problem. SIwave goes through the nets and checks them in a physical way, making sure that there's no violation in terms of nets joined or disjoint or all the stuff.
Once you are done, you go to simulate. You are ready to simulate. That's how easy it is to use SIwave. Click simulate, and here, you specify the frequency, the frequency band. The frequency band is determined from the shape of your current.
You look at your current shape and see how it changes and what the spectrum contents of it are. You say then the spectrum content is constant up to here, and you try to solve beyond that just to see what's going on after that.
That's how we determine our bandwidth, the maximum bandwidth we want to solve. You can select other solver options, look at more setup in terms of accuracy, do you want balanced, do you want fast, do you want more accurate, which takes longer.
You can specify processing, how many calls you want to use, and there are other things that you can look at for the setup. You can also export the touchstone file for now. I'm not going to do that. I'm going to show it later on. Then, you say launch. If I do that, SIwave solves the problem.
I can go to the results and see the S-parameters. The S-parameters are normalized to 0.1 ohm. However, we don't know what's the impedance of our power planes, and consequently, we know that these results are not reliable.
You cannot trust them, because you have to normalize the port to the right impedance that matches your power plane. So, how can we tell? If we cannot tell, then we cannot use, especially if you are looking at crosstalk.
If you are looking at the crosstalk, and you have so many lines, how can you trust the results? You cannot.
You have to make sure that your power planes, the return loss of your power planes is extremely, extremely good, like minus 40, minus 50, across the band of interest, to make sure that the crosstalk results are reliable. So, what do we do in this case?
Then, we have other options that you can do in SIwave. That's beautiful. SIwave gives you so many options, which is renormalized. Instead of having, of using, of using a power plane, you can do the crosstalk.
You can also have a crosstalk, but you can also have a crosstalk, and you can also have a crosstalk. You can also have a crosstalk, but you have to keep playing with it. If you are using point one, you have to change it to another number.
And unfortunately, you need to keep playing with it until you get very good return loss. Once you get the best possible return loss, then you can look at your crosstalk. Now, the results of the crosstalk can be trusted.
Now, the Z matrix, this is simply the Z matrix extracted from the S parameter by removing the effect of the ports. So by looking at Z, we are simply looking at the impedance of the power plane itself.
And we focus mainly on Z11 and Z22, which represent the real impedance of the power planes, which is what we are interested in, because, you know, we are interested in the power planes, which is what we are interested in, which is what we are interested in, because that impedance is what's going to affect the drop in the voltage due to the change in the current.
Now, the main mistake that many people do when they look at the Z parameter is they try to optimize this curve as is. Unfortunately, no, you cannot do that. You need to make sure that your power plane is matching your voltage regulator model. So, how do we solve this problem?
We simply go back to our circuit and we try to replace our voltage regulator with its equivalent circuit. So, we go here. So that's another powerful thing in SIwave. You can add equivalent circuits to certain connections you have in your model.
And I will go to design tools and I will say add generated circuit element. And here, what I do is I select the component. Remember, we said when we upload this, SIwave uploads all the discrete components. So, I will upload this one. And for example, and this is the designator.
So, this is the name of the part, but you could have so many of them on your PCB for each location. It has it will have a designated reference name. So, for our case, we have only one component, and it's called VRM 1. Now, we go here. We select the positive voltage.
We select here the negative voltage of this component. And we say the equivalent circuit of the voltage regulator is almost like an inductor plus resistor. You say create and you can enter the name. You can enter the part number. It can be anything.
And for the inductor, we selected 4.7 a minus 10, which is 0.47 nano Henry and 8 milli ohm. I do that. I say, okay, it will create a one and it already I already did that. Now, to make sure that it did create that component on that connection.
You go back to here and from edit tools, you check on the circuit element parameters. That's what you have all the list of all everything that you have. So, if I go to the inductors, I see my component here.
And it's very important that you do that because sometimes when people generate circuits, sometimes it attach itself to the positive, but the negative is not connected. So something went wrong during the connection, and I noticed that many times.
So, it's good to go back to this and check and make sure that the connection to the ground is exist there. Otherwise, you need to click on this component, delete it, and repeat the connection again. To make sure that it's done in the proper way.
Once you do that, then you have only one other step to do. Let me go back to the same list. Circuit element parameters. So, you have to select the ports. So, now that we put a circuit on our virtual regulator component, we don't need this port anymore.
So, what you do, you click here, and you deactivate. And by deactivating here, now officially, you have only one port from the CPU looking into your power plane, plus the equivalent circuit of the source, your VRM.
And if you do that and you solve it, go through this same process of solving it, which is simply whether you click here and you click PI, or you can go directly to simulation where we have the list of all the solvers that exist in SIwave and you select SYZ, and parameters. That's exactly the PI.
That's exactly a PI solver. You click here, and it's the same table, same bandwidth, and you can adjust your accuracy that you want. And you say launch. And I did that. And now, if I go back, I look at my Z parameter. Suddenly, you know, as you can see, the look, the standard way, Z parameter.
What's it look like? When you are doing PI. And now, this one is the one I need to focus on and try to optimize. Now, if we go back to this drawing for looking or studying the Z11, looking from the CPU, you notice here that we have a Zmax.
This Zmax is determined by how much voltage we are allowed to drop. So, delta V over delta I should be, should be equal to Zmax. And that's how we derive Zmax. So, Zmax, practically, there's a formula for Zmax. And that formula, it's written here. It's delta V.
It's the allowable voltage drop that we allowed for our die divided over 0.5 times Imax. So, if I go back to Imax, so Imax, it is, it's this guy. What is the maximum current required by the die? So, you need to keep your Z below that value.
And that's where you start adding the coupling caps until you suppress it way below this value. Okay, what else can we do with SIwave? We can also do sensitivity analysis.
And what this sensitivity analysis allows us to do, is to see how sensitive our parameters, whether S parameters or Z parameters, to the change in the impedance of the components.
So, if I want to do that, you have to go to home first and you select circuit element parameters, which gives you the list of all these capacitors, inductance, and resistor. You look for the ones that have in your, in your power plane.
So, in my case, I have C11 and C 12. They are used in, in this power plane. And you come to this column and you just click on it and it will turn into green. Yes, green sign. Yes. Okay, or you click on it again and it will be turned into no cross.
So, so that's how you activate, you activate the sensitivity of this. Like you want to calculate, you want SIwave to calculate the sensitivity of the S parameters or the Z parameters with respect to these, these numbers.
Then, when you go and you do solving, again, we go back to the simulation and we select this YZ or as I, as I said before, we can go to this table and you select PI. Doesn't matter. This is to start from the beginning. If I go to S Y Z, it means it will use the last one that I solved.
That's, that's the difference between the two. And if you notice, there is a sensitivity tab here, and all what you need to do, is to activate them.
You say, yes, I want you to calculate S and Y and Z of this power plane, the sensitivity of these parameters to the, to the, to the two components I activated in the previous table, and you launch. And if you do that, this is what you're going to get. You're going to get a plot.
And this plot is, for example, for Z parameters is with respect to C11 and C 12. So, what you're looking at is the slope. We're talking about, teeny weeny change. So, the slope just gives you an idea how sensitive your Z parameters to C11 and C 12. So, you can turn off one of them.
You can just look at one of them and, or you can both of them. You can look at it. Of course, you're going to have so many power planes and so many components, and you can, and you can, of course, study them one by one.
And that's how you can tell if your parameters, Z parameters, is sensitive or not to these components. And if it's too, too sensitive, then, then you need to be careful because remember, these are discrete components, and if they are discrete components, they don't, they don't have exact values.
There's a Delta. So, you need to study how much is the Delta. And that's what that Delta is small. So, you need to use the slope with the Delta to be able to tell how much the Z will change here.
Good thing here is SI Wave shows you that the, the slope sensitivity slope with respect to frequency up to one gigahertz. So, that's something very powerful existing in SI Wave. And I noticed lots of people don't use it. So, please make use of it.
It will tell you a lot about your power plane behavior. What else can we do with SI Wave? We can calculate the equivalent circuit of our power plane. Practically, we can compute the equivalent RLGC subcircuit.
You can do that only for the case where you have no equivalent circuit of the VRM attached to your circuit. Practically, you have two ports on your, your power plane. So, you click on right click, then select compute RLGC subcircuit. Try to select something very low frequency.
Don't try to select something very high. Okay. Okay. Okay. Okay. Okay. Okay. All right, there you go. I can see, I can see the output now, because of the complication at high frequencies.
And then you have to assign sync and source if you do auto automatically as I have assigned sync to the CPU and source to the VRM. Now, if I want to calculate the equivalent circuit, you have to select both of them.
So, you have to select two lines per power plane, then compute RLGC, and notice these are the values. But and also notice the units used. is the resistance, this is the inductance, this is the conductance, and this is the capacitance in picofarad, of course.
So, that's that's how much you have it in picofarad. You can export RLGC subcircuit, and SIwave allows you to export it in a different using different format, depends what kind of where you're going to use your your your file.
You can enter the name, you can enter the number of lumps, so practically, you can have one one set, you can have many of them like in this case, I have four of them. So, sometimes you don't want them to be only one lump, maybe you want them to be distributed over a group of them.
Then, we have the MCP, MCP stands for model connection protocol, and what is this going to do if you select die package or PCB, let me show you here, practically, is this is this equivalent circuit is it for the die, is it for the package, or is it for the PCB, and all what it does, it will add these additional lines, MCP lines, that talks about whether it's a die file or is it a package file or is it a PCB file, or you can select none, you can select none, then it will not add these these lines, then you click ok, and then it will produce a file for you that you can use with so many other kinds of circuits.
The one of the first thing you want to do when you finish solving a model is is to check the mesh. Sometimes it's it's good to verify the mesh as you know because this is a PCB structure, SIwave uses exactly the same mesh in all layers, so it's the same 2D mesh.
So, you can zoom in on different layers and see how good or bad your your mesh. Check the vs area if you're not happy and and you want more accuracy, you can you can increase accuracy required, you can increase the tolerance required for the solver. So, this is something good to check and to verify.
You can also verify the simulation properties. So, if you solve this problem long time ago and you forgot completely about the setup, simply you can select this option and you can review the setup that you did in order to produce this result. That's something you can do at the beginning.
You can also export your model to an IBIS file. So, an ICM stands for interconnect modeling specification. It is a behavioral ASCII-based file format at the end, and it's used mainly to represent passive interconnection.
It is still an IBIS model, so the file doesn't contain the the physical model of your of your powerpoint but just a behavioral description of the circuit. You can also export to an S-parameter netlist.
So, it's it's a it's a file that's simply a netlist, and it's being used for other other applications. So, it's available from SIwave. The last thing I wanted to show you is for export is the S-parameter data network explorer. So, what is a data network explorer?
It's something that is provided with SIwave. It's something that it's a tool that comes with SIwave. We will have a special video for it and we will show you how to do that in a bit. So, let's go ahead and start with the SIwave. So, let's go ahead and start with the SIwave.
This is a tool that is provided in a SIwaveette, which allows you to process the S-parameters and the beauty of it, it allows you to verify the causality of your results and the passivity of your results and do a lot of things.
As I said, there will be a special video just to talk about this tool that comes with this Iwave for free. You can also export the result to S-utility. Quite nice stuff with your data. Again, we will talk more about it in a special video.
So, these two tools, the NDE and the S-utility, it comes with SI-WAVE, and you can use them to do some different kind of checking and verifications for your data to make sure that the data are reliable, you can trust them.
So, checking the solution, displaying the data in many forms, exporting data in many forms, and many kind of post-processing, these are the things that you will be able to do through SI-WAVE PI analysis. Thank you. Thank you.

