← Back to team overview

kicad-developers team mailing list archive

Re: IBIS / SPICE simulation

 

Hi,


That's an impressive collection of tools you have on video!


I am personally really interesting in Kicad having a full simulation toolkit, but that's a lot of work :)

With Thomas, we have been trying to add some signal / power integrity tools into kicad for some months now. ( mainly on the EM simulation side )

What we thought could be great to implement, just listing some, just in case:

- Power Delivery Network analysis ( based on PCB )

- Via DC stress analysis ( based on PCB )

- Cross-talk / coupling

- RLCG parameter extraction ( based on a 2D simulation )

- Impedance matching / reflections

- Eye patterns ( based on IBIS files + PCB )

- Current path visualization ( based on PCB )

- 3D transient simulation ( based on IBIS + pcb )


We already made some FEM tests using sparselizard ( a FEM library ) , and got some results. From pcbnew, we can generate a 3D mesh from a board and simulate:

- DC current flow / resistance between any two pads that share the same net (3D solver),

- DC capacitance between any two nets (3D solver),

- R L C parameters are just a step away. (2D solver)

Our test repo is there, ( but requires setup described in Wiki to build ):

https://gitlab.com/pointhi/kicad/-/tree/sparselizard_fem


@Andrew, I could not find your IBIS parser on your github, could you send a link ?


Regards,

Fabien Corona


On 31/08/2021 00:38, Andrew Zonenberg wrote:
Also of note...

I've got a bunch of tools in glscopeclient and
libscopehal/libscopeprotocols for NRZ/PAM4 signal generation, channel
emulation, de-embedding, equalization, clock recovery, eye patterns,
etc. Might be worth pursuing some kind of integration to develop a full
channel design/simulation tool kit in KiCAD down the road? I have an
IBIS parser already but haven't built a full IBIS simulator yet. It's on
the to-do list though. All of these tools are 3-clause BSD so license
compatible with KiCAD.

Ideally I'd like to integrate with an EM solver to extract a S-parameter
model of a PCB channel as well, so I can just click on pads of a board
to set up ports, configure a frequency sweep, then shove that into a
time domain model.

Here's a quick demo of some of the channel design tools:
https://www.youtube.com/watch?v=tgxtSVG4y_E

On 8/30/21 3:24 PM, Reece R. Pollack wrote:
I started down the path of creating an IBIS-to-Spice converter a couple
of years ago. I researched it enough to decide it was feasible, then
discovered a commercial product demo that would do enough of what I
needed at the time and stopped working on it.

I'd just about forgotten about it until you mentioned it.

-Reece

On 8/30/21 12:34 PM, Fabien Corona wrote:
Hello everyone,

I am working on an IBIS parser for kicad integration.
IBIS is a standard format to I/O buffers, that allows for "fast" and
accurate signal integrity simulations.
While parsing the IBIS format is not so hard, well... I have data to
simulate, but no simulator...

I was wondering if anybody in this mailing list had knowledge about
IBIS and / or SPICE simulation ?
 From the info I gathered, it is quite "easy" to convert to convert to
a SPICE model, but maybe there are better ways to do.
( If we could avoid a whole simulator from scratch, that would be nice )


Basically, an IBIS file is :
- R L C parameters,
- voltage vs current tables
- voltage vs time tables

Regards,

Fabien Corona


_______________________________________________
Mailing list: https://launchpad.net/~kicad-developers
Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx
Unsubscribe : https://launchpad.net/~kicad-developers
More help   : https://help.launchpad.net/ListHelp

_______________________________________________
Mailing list: https://launchpad.net/~kicad-developers
Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx
Unsubscribe : https://launchpad.net/~kicad-developers
More help   : https://help.launchpad.net/ListHelp

_______________________________________________
Mailing list: https://launchpad.net/~kicad-developers
Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx
Unsubscribe : https://launchpad.net/~kicad-developers
More help   : https://help.launchpad.net/ListHelp

Follow ups

References