← Back to team overview

kicad-developers team mailing list archive

Re: High speed tools

 

Hi Kliment,
I think if these things you explained will be implemented, it will make
high speed design very much easier.
And the problem is much worse if you have a lot of differential pairs. When
I see design and the only thing which I can do with differential pairs is
to tune length or redraw, I feel stressed.
Is it right that diffpairs are always treated as just single tracks now? If
I want to write a script or piece of code to change diffpair width or gap,
what idea should I use?
I think about finding all coupled lengths of some differential pair and
changing the gap on all of coupled lengths and don't touch it if it is
uncoupled... Or maybe shift a bit (by gap/2 difference for each side)

On Tue, 22 Sep 2020 at 22:23, Kliment (Future Bits) <kliment@xxxxxxxx>
wrote:

> Having just routed a board with 56 diffpairs I have an idea about number 4:
>
> I think we should treat diffpairs as single traces when routing and when
> using the pns functionality to move them around. The trace should have
> the thickness of 2x dpair trace width + 1x dpair trace gap, and have a
> clearance of dpair clearance. It should behave as such a trace to the
> pns and revert back to being a diffpair when shoving/pns manipulation is
> done. This way dragging, rerouting, and shoving diffpairs works as
> expected - it maintains the diffpairness of the pair. Length adjustment
> works just as well on a single trace, and places where the pair splits
> up or has a skew tune can remain locked while the trace is being
> manipulated. This requires minimal change to the pns (we just feed it
> different data) to work, and would dramatically improve the usability of
> diffpairs because all the lovely stuff we can do to traces now will be
> available to diffpairs without breakage. We still need the diffpair
> routing logic for vias and for starting/ending pairs, but we have that now.
>
> On 22.09.20 21:11, Tomasz Wlostowski wrote:
> > My 5 quick cents:
> >
> >>     1) tool to visualize nets lengths (similar to
> >>     https://github.com/MitjaNemec/Kicad_action_plugins#length-stats ).
> I
> >>     want to make a gui where you can define what nets you want to see
> >>     altogether. And it should show you length on each layer and summary.
> >>     And vias as well.
> >
> >       2) Same stuff for length between 2 objects (for example via and pad
> >>     for T-topology) similar to
> >>
> https://github.com/MitjaNemec/Kicad_action_plugins#pad2pad-track-distance.
> > New DRC will take care of that (checking length between arbitrary
> > endpoints as well as reporting constrained length traces/diff pairs).
> >
> >
> >>     3) some tool to define and automatically change tracks length on
> >>     different layers (to match target impedance)
> > Did you mean per-layer width/gap constraints? abs(Impedance) is not
> > related (at least not so simply) to trace lengths. We already have
> > length tuner tool, with the V6 design rule system it will be able to
> > pick length constraints from board design rules instead of hand-typed
> > values.
> >
> >>     4) Tool to work with differential pairs.
> > We didn't plan implementing such a tool. Beware that even if it happens,
> > applying more than cosmetic changes to the routing globally will likely
> > ruin your board so badly you'll spend rest of the day cleaning it up...
> >
> > Tom
> >
> >
> > _______________________________________________
> > 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