← Back to team overview

kicad-developers team mailing list archive

Re: High speed tools

 

Hi

Slightly related to this discussion and for inspiration:

https://twitter.com/azonenberg/status/1282188633118699520

Nick

On Wed, 23 Sep 2020 at 09:43, Alexander Shuklin <jasuramme@xxxxxxxxx> wrote:

> 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
>>
> _______________________________________________
> 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