Schematic: matching length tracks

Some signals like MIPI-DSI, eMMC memory, Ethernet, and USB require that all tracks have the same length. Some allow only 5mils of difference.
I think that will be helpful allow mark this on schema (and PCB get this propriety) in the same way that paired tracks.

Also will be good if we can specify a controlled impedance too.
In the PCB also is need measure the entire track length, and impedance. The last is complex and can be for a remote future or not.

I’d second the need for a directive label in the schematic editor that signifies length matching.

The length matching tools in the PCB editor already exist! They aren’t perfect, but they work for many people doing very high speed designs. The tricky part is making sure you are using the right tool for the job, since not all of the “net length” measurements in the software are measuring the exact same thing (including via lengths or not, for instance).

Quick edit: Controlled impedance marker in schematic/PCB is a long requested feature, but I believe the limiting factor is that there aren’t any industry standards for how to express that to manufacturers. In practice, you just have to add it to the fabrication notes and confirm with the manufacturer that they understand.

The basic length matching tools available at the moment are probably sufficient for my current needs,
but a recent video of Phil’s lab made me realize that a way to define inter-chip length equalization is currently missing from Kicad.

This is particularly useful for big FPGAs, and without some kind of integrated tool it is very painful to do.

Another useful thing could be to transition from a length based equalization to impedance based, but this is much more complex to do, the tool should be aware of the pcb stackup and materials.

As for the markers, i usually place manual notes, so not a thing that i particularly miss…

Hello, Is it possible to define DRC rules in KiCAD for the maximum length difference between signals from a group?
For example, there are Xsignals in Altium.
Creating High-speed Signal Classes with xSignals
Altium - How to use xSignals

But when I was starting my first job, my senior colleague had just rooted DD3 (CPU and one DDR3 chip) in an old version of PADS. He did this by setting a specific zoom value, then using a paper ruler to measure the lengths of the paths and record them in a table. I thought it couldn’t be done, but the first revision had a working CPU and DDR, and the third revision already met all the certification requirements and went into production.

I will also be doing DDR3, so I hope that I will have an easier time with KiCAD 7 than my colleague in past.

KiCad has a length tuning function that lets you set a target length and also shows the actual length during adding of snake curves.

Unfortunately the answer is still the same as when the OP asked. The tools are partially there to do length matching while routing, but some of it must be done by hand.

For improved impedance-aware routing, consider giving this issue a thumbs up: Feature request: Better support for impedance matching (#11158) · Issues · KiCad / KiCad Source Code / kicad · GitLab

That doesn’t include marking nets as being length-matched in the schematic editor. Not sure if there’s an issue for that (couldn’t find it quickly).

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.