Skip to main content
Lead
June 2, 2024
Solved

Should I use length matching on all differential pairs?

  • June 2, 2024
  • 1 reply
  • 2968 views

Even if I route the differential pairs, one pair will always be longer than the other.

Should I route an extra path, like a sawtooth or tromebone on the shortest pair to make booth differential pair equal in length?

I see that the STM32MP1 dev-kit does not use this, either on DDR or Gigabit Ethernet, but I have heard that it's recommended to make sure that all differential pairs have the same length.

HDMI:

HDMIHDMI

 

Gigabit Ethernet:

Gigabit EthernetGigabit Ethernet

USB OTG: 

USB OTG 1USB OTG 1

 

USB OTG:

USB OTG 2USB OTG 2

DQS1:

DQS1DQS1

DQS0:

DQS0DQS0

DDR CLK:

DDR_CLKDDR_CLK

Best answer by PatrickF

Hi, it is vice versa, the USB_DM should be longer than USB_DM by 507um.

The AN lists the package inner length differences (i.e. negative value mean DM is shorter than DP by 507um inside the package)

Sound logical to have a value around 500um if you look at ball locations Vs the package edge where you are going to escape the tracks).

PatrickF_1-1717481736916.png

Regards.

 

 

 

1 reply

PatrickF
Technical Moderator
June 3, 2024

Hi @DMårt 

for DDR, the lenghts requirements are provided in AN5122 and could be checked with associated excel sheets.

Usually, seems experts give slightly higher priority to good differential routing rather than strict length matching.

 

e.g. for DSI in STM32MP15, we provided in AN5031 this guidelines as rule of thumb. +/-5mils is somewhat hard to achieve (note that we already have partial compensation for length difference between two balls when they are diagonal or stacked).

PatrickF_0-1717402165031.png

 

For other interfaces (Ethernet, USB, HDMI, etc...), you have to refer to the related standard requirements or associated components routing guidelines.

 

Regards

In order to give better visibility on the answered topics, please click on 'Accept as Solution' on the reply which solved your issue or answered your question.NEW ! Sidekick STM32 AI agent, see here
DMårtAuthor
Lead
June 3, 2024

Hi @PatrickF 

 

The difference between the CLK_P and CLK_N was about 1 mm.

 

Yes. I found that the pad for the USB has a pitch of 507 um. That means I should make the N-track 507 um shorter than P-track due to internal length of N-track?

 

 

STM32MP151AAC3 custom board with STM32-OS as operating system: https://github.com/DanielMartensson/STM32-ComputerSTM32MP257FAK3 custom board with STM64-OS as operating system: https://github.com/DanielMartensson/STM64-Computer
PatrickF
PatrickFBest answer
Technical Moderator
June 4, 2024

Hi, it is vice versa, the USB_DM should be longer than USB_DM by 507um.

The AN lists the package inner length differences (i.e. negative value mean DM is shorter than DP by 507um inside the package)

Sound logical to have a value around 500um if you look at ball locations Vs the package edge where you are going to escape the tracks).

PatrickF_1-1717481736916.png

Regards.

 

 

 

In order to give better visibility on the answered topics, please click on 'Accept as Solution' on the reply which solved your issue or answered your question.NEW ! Sidekick STM32 AI agent, see here