How do PCB vias affect signal quality? Announcing the arrival of Valued Associate #679: Cesar Manara Planned maintenance scheduled April 17/18, 2019 at 00:00UTC (8:00pm US/Eastern)Series resistor on digital signal linesReducing cost by eliminating microvias when designing a PCB with buried viasA few questions about vias and pads on a PCBVias in a footprint using Eagle50MHz SPI PCB routing, use vias or resistors?Good method to remove tenting on vias after assembly for debugging?Is using vias for split data buses a bad idea?4 layers PCB stack - (signal, signal, power, ground)How do I ensure best signal performance when using a 2.92 mm (K) connector that is compression mounted on my PCB?Multiple vias on PCBHigh Frequency Characteristics of Solder-Filled Vias

What are the pros and cons of Aerospike nosecones?

What makes black pepper strong or mild?

Is there a Spanish version of "dot your i's and cross your t's" that includes the letter 'ñ'?

Should I call the interviewer directly, if HR aren't responding?

How to deal with a team lead who never gives me credit?

Sorting numerically

How can I fade player when goes inside or outside of the area?

Why is black pepper both grey and black?

If 'B is more likely given A', then 'A is more likely given B'

Bonus calculation: Am I making a mountain out of a molehill?

Gastric acid as a weapon

What are the motives behind Cersei's orders given to Bronn?

Did Xerox really develop the first LAN?

Can Pao de Queijo, and similar foods, be kosher for Passover?

What happens to sewage if there is no river near by?

Using et al. for a last / senior author rather than for a first author

What is the correct way to use the pinch test for dehydration?

The logistics of corpse disposal

What is the longest distance a 13th-level monk can jump while attacking on the same turn?

Is it true that "carbohydrates are of no use for the basal metabolic need"?

If a contract sometimes uses the wrong name, is it still valid?

Do you forfeit tax refunds/credits if you aren't required to and don't file by April 15?

What is the musical term for a note that continously plays through a melody?

Is there a "higher Segal conjecture"?



How do PCB vias affect signal quality?



Announcing the arrival of Valued Associate #679: Cesar Manara
Planned maintenance scheduled April 17/18, 2019 at 00:00UTC (8:00pm US/Eastern)Series resistor on digital signal linesReducing cost by eliminating microvias when designing a PCB with buried viasA few questions about vias and pads on a PCBVias in a footprint using Eagle50MHz SPI PCB routing, use vias or resistors?Good method to remove tenting on vias after assembly for debugging?Is using vias for split data buses a bad idea?4 layers PCB stack - (signal, signal, power, ground)How do I ensure best signal performance when using a 2.92 mm (K) connector that is compression mounted on my PCB?Multiple vias on PCBHigh Frequency Characteristics of Solder-Filled Vias



.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty margin-bottom:0;








8












$begingroup$


Is it bad practice to route high speed signals (like a SPI bus clocked at 4MHz) through PCB vias?



I've noticed a good bit of noise (+-300mV) on my SPI bus signals with 3.3V levels. The signals traces are only about 5cm long but they go through about 5 vias each on the way to their destination. The board has only 2 layers which is why there are so many vias on these lines.



What kind of noise can I expect (if any) to be introduced by a PCB layer change via?




Lots of good information in the answers. It's going to be hard to pick only one. Given that a PCB via introduces about 1.2nH of inductance and 0.4pF of capacitance the consensus seems to be that the 5 via's wont affect a 4MHz signal in any significant way.










share|improve this question











$endgroup$











  • $begingroup$
    If you imagine the side view of a trace through a via, how would you expect that shape to affect the signal?
    $endgroup$
    – ratchet freak
    Apr 11 at 16:16






  • 6




    $begingroup$
    A 4 MHz SPI bus is hardly "high speed" today - you do need to think about signal integrity but sane via usage should not be an issue. You should not need five vias to accomplish a 5cm run - did you let an autorouter run wild? For boards someone asking your question would be making, you probably should be manually routing. The "noise" you are measuring is likely a result of how you are measuring, there probably is some overshoot and ringing, but it's not clear you are measuring that.
    $endgroup$
    – Chris Stratton
    Apr 11 at 16:20











  • $begingroup$
    With two layer board there typically isn't a solid ground plane so the trace impedance is not constant anyway. Thus vias make little difference. And at least they don't cause (significant amount of) noise. Also 4 MHz is not high speed as mentioned in other comments.
    $endgroup$
    – TemeV
    Apr 11 at 16:30










  • $begingroup$
    for a start, view each via as 1 nanoHenry inductance in series with a transmission line. Then you can refine this model.
    $endgroup$
    – analogsystemsrf
    Apr 11 at 16:43






  • 1




    $begingroup$
    @ChrisStratton I agree with you that 4MHz isn't high speed as high speed comes these days. For the sake of completeness, many signal integrity issues are driven by raise time, rather than fundamental frequency. A 4MHz clock may have a 20ns raise time.
    $endgroup$
    – Nick Alexeev
    Apr 11 at 23:50


















8












$begingroup$


Is it bad practice to route high speed signals (like a SPI bus clocked at 4MHz) through PCB vias?



I've noticed a good bit of noise (+-300mV) on my SPI bus signals with 3.3V levels. The signals traces are only about 5cm long but they go through about 5 vias each on the way to their destination. The board has only 2 layers which is why there are so many vias on these lines.



What kind of noise can I expect (if any) to be introduced by a PCB layer change via?




Lots of good information in the answers. It's going to be hard to pick only one. Given that a PCB via introduces about 1.2nH of inductance and 0.4pF of capacitance the consensus seems to be that the 5 via's wont affect a 4MHz signal in any significant way.










share|improve this question











$endgroup$











  • $begingroup$
    If you imagine the side view of a trace through a via, how would you expect that shape to affect the signal?
    $endgroup$
    – ratchet freak
    Apr 11 at 16:16






  • 6




    $begingroup$
    A 4 MHz SPI bus is hardly "high speed" today - you do need to think about signal integrity but sane via usage should not be an issue. You should not need five vias to accomplish a 5cm run - did you let an autorouter run wild? For boards someone asking your question would be making, you probably should be manually routing. The "noise" you are measuring is likely a result of how you are measuring, there probably is some overshoot and ringing, but it's not clear you are measuring that.
    $endgroup$
    – Chris Stratton
    Apr 11 at 16:20











  • $begingroup$
    With two layer board there typically isn't a solid ground plane so the trace impedance is not constant anyway. Thus vias make little difference. And at least they don't cause (significant amount of) noise. Also 4 MHz is not high speed as mentioned in other comments.
    $endgroup$
    – TemeV
    Apr 11 at 16:30










  • $begingroup$
    for a start, view each via as 1 nanoHenry inductance in series with a transmission line. Then you can refine this model.
    $endgroup$
    – analogsystemsrf
    Apr 11 at 16:43






  • 1




    $begingroup$
    @ChrisStratton I agree with you that 4MHz isn't high speed as high speed comes these days. For the sake of completeness, many signal integrity issues are driven by raise time, rather than fundamental frequency. A 4MHz clock may have a 20ns raise time.
    $endgroup$
    – Nick Alexeev
    Apr 11 at 23:50














8












8








8


2



$begingroup$


Is it bad practice to route high speed signals (like a SPI bus clocked at 4MHz) through PCB vias?



I've noticed a good bit of noise (+-300mV) on my SPI bus signals with 3.3V levels. The signals traces are only about 5cm long but they go through about 5 vias each on the way to their destination. The board has only 2 layers which is why there are so many vias on these lines.



What kind of noise can I expect (if any) to be introduced by a PCB layer change via?




Lots of good information in the answers. It's going to be hard to pick only one. Given that a PCB via introduces about 1.2nH of inductance and 0.4pF of capacitance the consensus seems to be that the 5 via's wont affect a 4MHz signal in any significant way.










share|improve this question











$endgroup$




Is it bad practice to route high speed signals (like a SPI bus clocked at 4MHz) through PCB vias?



I've noticed a good bit of noise (+-300mV) on my SPI bus signals with 3.3V levels. The signals traces are only about 5cm long but they go through about 5 vias each on the way to their destination. The board has only 2 layers which is why there are so many vias on these lines.



What kind of noise can I expect (if any) to be introduced by a PCB layer change via?




Lots of good information in the answers. It's going to be hard to pick only one. Given that a PCB via introduces about 1.2nH of inductance and 0.4pF of capacitance the consensus seems to be that the 5 via's wont affect a 4MHz signal in any significant way.







pcb noise via






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited Apr 12 at 15:40







Jeff Wahaus

















asked Apr 11 at 16:09









Jeff WahausJeff Wahaus

3197




3197











  • $begingroup$
    If you imagine the side view of a trace through a via, how would you expect that shape to affect the signal?
    $endgroup$
    – ratchet freak
    Apr 11 at 16:16






  • 6




    $begingroup$
    A 4 MHz SPI bus is hardly "high speed" today - you do need to think about signal integrity but sane via usage should not be an issue. You should not need five vias to accomplish a 5cm run - did you let an autorouter run wild? For boards someone asking your question would be making, you probably should be manually routing. The "noise" you are measuring is likely a result of how you are measuring, there probably is some overshoot and ringing, but it's not clear you are measuring that.
    $endgroup$
    – Chris Stratton
    Apr 11 at 16:20











  • $begingroup$
    With two layer board there typically isn't a solid ground plane so the trace impedance is not constant anyway. Thus vias make little difference. And at least they don't cause (significant amount of) noise. Also 4 MHz is not high speed as mentioned in other comments.
    $endgroup$
    – TemeV
    Apr 11 at 16:30










  • $begingroup$
    for a start, view each via as 1 nanoHenry inductance in series with a transmission line. Then you can refine this model.
    $endgroup$
    – analogsystemsrf
    Apr 11 at 16:43






  • 1




    $begingroup$
    @ChrisStratton I agree with you that 4MHz isn't high speed as high speed comes these days. For the sake of completeness, many signal integrity issues are driven by raise time, rather than fundamental frequency. A 4MHz clock may have a 20ns raise time.
    $endgroup$
    – Nick Alexeev
    Apr 11 at 23:50

















  • $begingroup$
    If you imagine the side view of a trace through a via, how would you expect that shape to affect the signal?
    $endgroup$
    – ratchet freak
    Apr 11 at 16:16






  • 6




    $begingroup$
    A 4 MHz SPI bus is hardly "high speed" today - you do need to think about signal integrity but sane via usage should not be an issue. You should not need five vias to accomplish a 5cm run - did you let an autorouter run wild? For boards someone asking your question would be making, you probably should be manually routing. The "noise" you are measuring is likely a result of how you are measuring, there probably is some overshoot and ringing, but it's not clear you are measuring that.
    $endgroup$
    – Chris Stratton
    Apr 11 at 16:20











  • $begingroup$
    With two layer board there typically isn't a solid ground plane so the trace impedance is not constant anyway. Thus vias make little difference. And at least they don't cause (significant amount of) noise. Also 4 MHz is not high speed as mentioned in other comments.
    $endgroup$
    – TemeV
    Apr 11 at 16:30










  • $begingroup$
    for a start, view each via as 1 nanoHenry inductance in series with a transmission line. Then you can refine this model.
    $endgroup$
    – analogsystemsrf
    Apr 11 at 16:43






  • 1




    $begingroup$
    @ChrisStratton I agree with you that 4MHz isn't high speed as high speed comes these days. For the sake of completeness, many signal integrity issues are driven by raise time, rather than fundamental frequency. A 4MHz clock may have a 20ns raise time.
    $endgroup$
    – Nick Alexeev
    Apr 11 at 23:50
















$begingroup$
If you imagine the side view of a trace through a via, how would you expect that shape to affect the signal?
$endgroup$
– ratchet freak
Apr 11 at 16:16




$begingroup$
If you imagine the side view of a trace through a via, how would you expect that shape to affect the signal?
$endgroup$
– ratchet freak
Apr 11 at 16:16




6




6




$begingroup$
A 4 MHz SPI bus is hardly "high speed" today - you do need to think about signal integrity but sane via usage should not be an issue. You should not need five vias to accomplish a 5cm run - did you let an autorouter run wild? For boards someone asking your question would be making, you probably should be manually routing. The "noise" you are measuring is likely a result of how you are measuring, there probably is some overshoot and ringing, but it's not clear you are measuring that.
$endgroup$
– Chris Stratton
Apr 11 at 16:20





$begingroup$
A 4 MHz SPI bus is hardly "high speed" today - you do need to think about signal integrity but sane via usage should not be an issue. You should not need five vias to accomplish a 5cm run - did you let an autorouter run wild? For boards someone asking your question would be making, you probably should be manually routing. The "noise" you are measuring is likely a result of how you are measuring, there probably is some overshoot and ringing, but it's not clear you are measuring that.
$endgroup$
– Chris Stratton
Apr 11 at 16:20













$begingroup$
With two layer board there typically isn't a solid ground plane so the trace impedance is not constant anyway. Thus vias make little difference. And at least they don't cause (significant amount of) noise. Also 4 MHz is not high speed as mentioned in other comments.
$endgroup$
– TemeV
Apr 11 at 16:30




$begingroup$
With two layer board there typically isn't a solid ground plane so the trace impedance is not constant anyway. Thus vias make little difference. And at least they don't cause (significant amount of) noise. Also 4 MHz is not high speed as mentioned in other comments.
$endgroup$
– TemeV
Apr 11 at 16:30












$begingroup$
for a start, view each via as 1 nanoHenry inductance in series with a transmission line. Then you can refine this model.
$endgroup$
– analogsystemsrf
Apr 11 at 16:43




$begingroup$
for a start, view each via as 1 nanoHenry inductance in series with a transmission line. Then you can refine this model.
$endgroup$
– analogsystemsrf
Apr 11 at 16:43




1




1




$begingroup$
@ChrisStratton I agree with you that 4MHz isn't high speed as high speed comes these days. For the sake of completeness, many signal integrity issues are driven by raise time, rather than fundamental frequency. A 4MHz clock may have a 20ns raise time.
$endgroup$
– Nick Alexeev
Apr 11 at 23:50





$begingroup$
@ChrisStratton I agree with you that 4MHz isn't high speed as high speed comes these days. For the sake of completeness, many signal integrity issues are driven by raise time, rather than fundamental frequency. A 4MHz clock may have a 20ns raise time.
$endgroup$
– Nick Alexeev
Apr 11 at 23:50











4 Answers
4






active

oldest

votes


















4












$begingroup$

300mV is a lot for a 3.3V bus. Vias will not cause a problem as a via only adds a few nH of inductance and if the capacitance on either end is lower than 100pF and a trace that short would be under 0.1Ω which would make an RLC resonator at around 1GHz, and you won't see it.



Transmission line effects don't become noticeable until 50MHz, so 4Mhz should be fine.



The most common problem on two layer boards is common mode noise from improper grounding (daisy chaining grounds) and common mode noise. So I would first look at the grounding system in the design, make sure that currents don't create common mode noise through small traces that are daisy chained.



The other problem might be with grounding and where the scope ground is placed.






share|improve this answer









$endgroup$












  • $begingroup$
    The SPI bus is going through a TXB0108 level shifter (5 to 3.3V) so I was expecting the 3.3V signals to be pretty clean. The noise I was seeing was apparently due to how I had the scope connected to the bus. The SPI bus has 3 devices on it, two within 2 cm of the level translator and one about 5cm distance. The furthest device is socketed so I removed it to use the socket pins to attach the scope. With the 3rd device removed the signals had significant noise. I re-measured with the 3rd device attached and the noise was significantly less.
    $endgroup$
    – Jeff Wahaus
    Apr 12 at 15:57











  • $begingroup$
    Grounding for scopes can be a big problem, if you go faster than 30MHz+ the grounding wire inductance of the probe starts to become noticeable and you need to take steps to make it as short as possible.
    $endgroup$
    – laptop2d
    Apr 12 at 16:08


















4












$begingroup$

I'm a novice when it comes to higher speed signals, but it just so happens I was researching signal integrity when you asked the question. One source I am referencing is Right the First Time by Lee Ritchey. You will want to check out chapter 25, Right Angle Bends and Vias: Potential Sources of Reflections and Other Problems.



I don't believe the vias will cause any problems in your design. Here is an excerpt from the source:




Vias, when used in traces, are capacitive, not inductive. The capacitance value of a via is small compared to the capacitance of a trace (3.5pF/inch for 50Ω). In general, vias are not visible to signals with edge rates slower than 0.3 ns.




The chapter goes on to discuss reflections due to PCB layer impedance mismatches, however this appears to be a case when manufacturing tolerances are not met.






share|improve this answer









$endgroup$




















    2












    $begingroup$

    The issue is not the SPI clock being too high frequency (4 MHz). It could be 0.1 Hz and the signal edges would still ring, as it's the edge rate that defines the bandwidth. Typically microcontroller IO pins are moderately strong, and can drive for example a 30pF capacitive load with 4ns rise time or 10pF capacitive load with 2.5nS rise time. That's strong enough to drive 100-120MHz signals out from a MCU, according to STM32F207 datasheet.



    What you may be missing is that if your MCU does not have settable pin drive strength, you can slow down the rise/fall times to sane levels by putting for example 33 ohms series terminating resistors at the device that is driving the pins. This way the edges need less bandwidth and there is less ringing. 4MHz SPI running for 5cm of length should not be an issue, but do check what rise/fall times your chips need to work.



    Another issue is that your oscilloscope might show ringing for signals just because the scope or probes have 100MHz BW limit and signal edges are fast enough to go over 100MHz BW limit.






    share|improve this answer









    $endgroup$












    • $begingroup$
      The edge rate that I've measured is around 300ns. There is a good bit of ringing on the MOSI line present but it's gone by the time the rising clock edge happens. I could probably get away with an 8MHz bus clock but not any faster without the ringing becoming an issue.
      $endgroup$
      – Jeff Wahaus
      Apr 13 at 0:08


















    1












    $begingroup$

    5MHz is slow. But the bandwidth of the signal depends on risetime.



    BW=0.35/Tr so it is 10ns=0.01us the BW= 0.35/0.01us = 35MHz



    But if the signal was HDMI or CML logic or even just 1ns risetime, then ;



    BW= 350MHz Then we have two Rules of Thumb more maximum path length to ignore reflections from vias or long traces;



    1: 1/10 Lambda the 1ns rise time is using v=c/sqrt(Er)

    - max path length is 8.5 cm



    1. Slewrate /4

      • max path length is 4.5 cm


    For better analysis use some calc tools like Saturn PCB.exe or analysis tools using the ESL,ESR,C(pf) of your via inductance and capacitance into a model to see the result using the VOl/Iol=Ron driver impedance.



    Then model into your favorite simulator. Mine is Falstad's




    Your results are ONLY as good as your model values as FALSTAD uses ideal voltage sources and wires are ideal. So you add R,L,C values to suit your model.







    share|improve this answer









    $endgroup$













      Your Answer






      StackExchange.ifUsing("editor", function ()
      return StackExchange.using("schematics", function ()
      StackExchange.schematics.init();
      );
      , "cicuitlab");

      StackExchange.ready(function()
      var channelOptions =
      tags: "".split(" "),
      id: "135"
      ;
      initTagRenderer("".split(" "), "".split(" "), channelOptions);

      StackExchange.using("externalEditor", function()
      // Have to fire editor after snippets, if snippets enabled
      if (StackExchange.settings.snippets.snippetsEnabled)
      StackExchange.using("snippets", function()
      createEditor();
      );

      else
      createEditor();

      );

      function createEditor()
      StackExchange.prepareEditor(
      heartbeatType: 'answer',
      autoActivateHeartbeat: false,
      convertImagesToLinks: false,
      noModals: true,
      showLowRepImageUploadWarning: true,
      reputationToPostImages: null,
      bindNavPrevention: true,
      postfix: "",
      imageUploader:
      brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
      contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
      allowUrls: true
      ,
      onDemand: true,
      discardSelector: ".discard-answer"
      ,immediatelyShowMarkdownHelp:true
      );



      );













      draft saved

      draft discarded


















      StackExchange.ready(
      function ()
      StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2felectronics.stackexchange.com%2fquestions%2f432026%2fhow-do-pcb-vias-affect-signal-quality%23new-answer', 'question_page');

      );

      Post as a guest















      Required, but never shown

























      4 Answers
      4






      active

      oldest

      votes








      4 Answers
      4






      active

      oldest

      votes









      active

      oldest

      votes






      active

      oldest

      votes









      4












      $begingroup$

      300mV is a lot for a 3.3V bus. Vias will not cause a problem as a via only adds a few nH of inductance and if the capacitance on either end is lower than 100pF and a trace that short would be under 0.1Ω which would make an RLC resonator at around 1GHz, and you won't see it.



      Transmission line effects don't become noticeable until 50MHz, so 4Mhz should be fine.



      The most common problem on two layer boards is common mode noise from improper grounding (daisy chaining grounds) and common mode noise. So I would first look at the grounding system in the design, make sure that currents don't create common mode noise through small traces that are daisy chained.



      The other problem might be with grounding and where the scope ground is placed.






      share|improve this answer









      $endgroup$












      • $begingroup$
        The SPI bus is going through a TXB0108 level shifter (5 to 3.3V) so I was expecting the 3.3V signals to be pretty clean. The noise I was seeing was apparently due to how I had the scope connected to the bus. The SPI bus has 3 devices on it, two within 2 cm of the level translator and one about 5cm distance. The furthest device is socketed so I removed it to use the socket pins to attach the scope. With the 3rd device removed the signals had significant noise. I re-measured with the 3rd device attached and the noise was significantly less.
        $endgroup$
        – Jeff Wahaus
        Apr 12 at 15:57











      • $begingroup$
        Grounding for scopes can be a big problem, if you go faster than 30MHz+ the grounding wire inductance of the probe starts to become noticeable and you need to take steps to make it as short as possible.
        $endgroup$
        – laptop2d
        Apr 12 at 16:08















      4












      $begingroup$

      300mV is a lot for a 3.3V bus. Vias will not cause a problem as a via only adds a few nH of inductance and if the capacitance on either end is lower than 100pF and a trace that short would be under 0.1Ω which would make an RLC resonator at around 1GHz, and you won't see it.



      Transmission line effects don't become noticeable until 50MHz, so 4Mhz should be fine.



      The most common problem on two layer boards is common mode noise from improper grounding (daisy chaining grounds) and common mode noise. So I would first look at the grounding system in the design, make sure that currents don't create common mode noise through small traces that are daisy chained.



      The other problem might be with grounding and where the scope ground is placed.






      share|improve this answer









      $endgroup$












      • $begingroup$
        The SPI bus is going through a TXB0108 level shifter (5 to 3.3V) so I was expecting the 3.3V signals to be pretty clean. The noise I was seeing was apparently due to how I had the scope connected to the bus. The SPI bus has 3 devices on it, two within 2 cm of the level translator and one about 5cm distance. The furthest device is socketed so I removed it to use the socket pins to attach the scope. With the 3rd device removed the signals had significant noise. I re-measured with the 3rd device attached and the noise was significantly less.
        $endgroup$
        – Jeff Wahaus
        Apr 12 at 15:57











      • $begingroup$
        Grounding for scopes can be a big problem, if you go faster than 30MHz+ the grounding wire inductance of the probe starts to become noticeable and you need to take steps to make it as short as possible.
        $endgroup$
        – laptop2d
        Apr 12 at 16:08













      4












      4








      4





      $begingroup$

      300mV is a lot for a 3.3V bus. Vias will not cause a problem as a via only adds a few nH of inductance and if the capacitance on either end is lower than 100pF and a trace that short would be under 0.1Ω which would make an RLC resonator at around 1GHz, and you won't see it.



      Transmission line effects don't become noticeable until 50MHz, so 4Mhz should be fine.



      The most common problem on two layer boards is common mode noise from improper grounding (daisy chaining grounds) and common mode noise. So I would first look at the grounding system in the design, make sure that currents don't create common mode noise through small traces that are daisy chained.



      The other problem might be with grounding and where the scope ground is placed.






      share|improve this answer









      $endgroup$



      300mV is a lot for a 3.3V bus. Vias will not cause a problem as a via only adds a few nH of inductance and if the capacitance on either end is lower than 100pF and a trace that short would be under 0.1Ω which would make an RLC resonator at around 1GHz, and you won't see it.



      Transmission line effects don't become noticeable until 50MHz, so 4Mhz should be fine.



      The most common problem on two layer boards is common mode noise from improper grounding (daisy chaining grounds) and common mode noise. So I would first look at the grounding system in the design, make sure that currents don't create common mode noise through small traces that are daisy chained.



      The other problem might be with grounding and where the scope ground is placed.







      share|improve this answer












      share|improve this answer



      share|improve this answer










      answered Apr 11 at 16:38









      laptop2dlaptop2d

      27.6k123785




      27.6k123785











      • $begingroup$
        The SPI bus is going through a TXB0108 level shifter (5 to 3.3V) so I was expecting the 3.3V signals to be pretty clean. The noise I was seeing was apparently due to how I had the scope connected to the bus. The SPI bus has 3 devices on it, two within 2 cm of the level translator and one about 5cm distance. The furthest device is socketed so I removed it to use the socket pins to attach the scope. With the 3rd device removed the signals had significant noise. I re-measured with the 3rd device attached and the noise was significantly less.
        $endgroup$
        – Jeff Wahaus
        Apr 12 at 15:57











      • $begingroup$
        Grounding for scopes can be a big problem, if you go faster than 30MHz+ the grounding wire inductance of the probe starts to become noticeable and you need to take steps to make it as short as possible.
        $endgroup$
        – laptop2d
        Apr 12 at 16:08
















      • $begingroup$
        The SPI bus is going through a TXB0108 level shifter (5 to 3.3V) so I was expecting the 3.3V signals to be pretty clean. The noise I was seeing was apparently due to how I had the scope connected to the bus. The SPI bus has 3 devices on it, two within 2 cm of the level translator and one about 5cm distance. The furthest device is socketed so I removed it to use the socket pins to attach the scope. With the 3rd device removed the signals had significant noise. I re-measured with the 3rd device attached and the noise was significantly less.
        $endgroup$
        – Jeff Wahaus
        Apr 12 at 15:57











      • $begingroup$
        Grounding for scopes can be a big problem, if you go faster than 30MHz+ the grounding wire inductance of the probe starts to become noticeable and you need to take steps to make it as short as possible.
        $endgroup$
        – laptop2d
        Apr 12 at 16:08















      $begingroup$
      The SPI bus is going through a TXB0108 level shifter (5 to 3.3V) so I was expecting the 3.3V signals to be pretty clean. The noise I was seeing was apparently due to how I had the scope connected to the bus. The SPI bus has 3 devices on it, two within 2 cm of the level translator and one about 5cm distance. The furthest device is socketed so I removed it to use the socket pins to attach the scope. With the 3rd device removed the signals had significant noise. I re-measured with the 3rd device attached and the noise was significantly less.
      $endgroup$
      – Jeff Wahaus
      Apr 12 at 15:57





      $begingroup$
      The SPI bus is going through a TXB0108 level shifter (5 to 3.3V) so I was expecting the 3.3V signals to be pretty clean. The noise I was seeing was apparently due to how I had the scope connected to the bus. The SPI bus has 3 devices on it, two within 2 cm of the level translator and one about 5cm distance. The furthest device is socketed so I removed it to use the socket pins to attach the scope. With the 3rd device removed the signals had significant noise. I re-measured with the 3rd device attached and the noise was significantly less.
      $endgroup$
      – Jeff Wahaus
      Apr 12 at 15:57













      $begingroup$
      Grounding for scopes can be a big problem, if you go faster than 30MHz+ the grounding wire inductance of the probe starts to become noticeable and you need to take steps to make it as short as possible.
      $endgroup$
      – laptop2d
      Apr 12 at 16:08




      $begingroup$
      Grounding for scopes can be a big problem, if you go faster than 30MHz+ the grounding wire inductance of the probe starts to become noticeable and you need to take steps to make it as short as possible.
      $endgroup$
      – laptop2d
      Apr 12 at 16:08













      4












      $begingroup$

      I'm a novice when it comes to higher speed signals, but it just so happens I was researching signal integrity when you asked the question. One source I am referencing is Right the First Time by Lee Ritchey. You will want to check out chapter 25, Right Angle Bends and Vias: Potential Sources of Reflections and Other Problems.



      I don't believe the vias will cause any problems in your design. Here is an excerpt from the source:




      Vias, when used in traces, are capacitive, not inductive. The capacitance value of a via is small compared to the capacitance of a trace (3.5pF/inch for 50Ω). In general, vias are not visible to signals with edge rates slower than 0.3 ns.




      The chapter goes on to discuss reflections due to PCB layer impedance mismatches, however this appears to be a case when manufacturing tolerances are not met.






      share|improve this answer









      $endgroup$

















        4












        $begingroup$

        I'm a novice when it comes to higher speed signals, but it just so happens I was researching signal integrity when you asked the question. One source I am referencing is Right the First Time by Lee Ritchey. You will want to check out chapter 25, Right Angle Bends and Vias: Potential Sources of Reflections and Other Problems.



        I don't believe the vias will cause any problems in your design. Here is an excerpt from the source:




        Vias, when used in traces, are capacitive, not inductive. The capacitance value of a via is small compared to the capacitance of a trace (3.5pF/inch for 50Ω). In general, vias are not visible to signals with edge rates slower than 0.3 ns.




        The chapter goes on to discuss reflections due to PCB layer impedance mismatches, however this appears to be a case when manufacturing tolerances are not met.






        share|improve this answer









        $endgroup$















          4












          4








          4





          $begingroup$

          I'm a novice when it comes to higher speed signals, but it just so happens I was researching signal integrity when you asked the question. One source I am referencing is Right the First Time by Lee Ritchey. You will want to check out chapter 25, Right Angle Bends and Vias: Potential Sources of Reflections and Other Problems.



          I don't believe the vias will cause any problems in your design. Here is an excerpt from the source:




          Vias, when used in traces, are capacitive, not inductive. The capacitance value of a via is small compared to the capacitance of a trace (3.5pF/inch for 50Ω). In general, vias are not visible to signals with edge rates slower than 0.3 ns.




          The chapter goes on to discuss reflections due to PCB layer impedance mismatches, however this appears to be a case when manufacturing tolerances are not met.






          share|improve this answer









          $endgroup$



          I'm a novice when it comes to higher speed signals, but it just so happens I was researching signal integrity when you asked the question. One source I am referencing is Right the First Time by Lee Ritchey. You will want to check out chapter 25, Right Angle Bends and Vias: Potential Sources of Reflections and Other Problems.



          I don't believe the vias will cause any problems in your design. Here is an excerpt from the source:




          Vias, when used in traces, are capacitive, not inductive. The capacitance value of a via is small compared to the capacitance of a trace (3.5pF/inch for 50Ω). In general, vias are not visible to signals with edge rates slower than 0.3 ns.




          The chapter goes on to discuss reflections due to PCB layer impedance mismatches, however this appears to be a case when manufacturing tolerances are not met.







          share|improve this answer












          share|improve this answer



          share|improve this answer










          answered Apr 11 at 16:28









          JYeltonJYelton

          16.4k2891193




          16.4k2891193





















              2












              $begingroup$

              The issue is not the SPI clock being too high frequency (4 MHz). It could be 0.1 Hz and the signal edges would still ring, as it's the edge rate that defines the bandwidth. Typically microcontroller IO pins are moderately strong, and can drive for example a 30pF capacitive load with 4ns rise time or 10pF capacitive load with 2.5nS rise time. That's strong enough to drive 100-120MHz signals out from a MCU, according to STM32F207 datasheet.



              What you may be missing is that if your MCU does not have settable pin drive strength, you can slow down the rise/fall times to sane levels by putting for example 33 ohms series terminating resistors at the device that is driving the pins. This way the edges need less bandwidth and there is less ringing. 4MHz SPI running for 5cm of length should not be an issue, but do check what rise/fall times your chips need to work.



              Another issue is that your oscilloscope might show ringing for signals just because the scope or probes have 100MHz BW limit and signal edges are fast enough to go over 100MHz BW limit.






              share|improve this answer









              $endgroup$












              • $begingroup$
                The edge rate that I've measured is around 300ns. There is a good bit of ringing on the MOSI line present but it's gone by the time the rising clock edge happens. I could probably get away with an 8MHz bus clock but not any faster without the ringing becoming an issue.
                $endgroup$
                – Jeff Wahaus
                Apr 13 at 0:08















              2












              $begingroup$

              The issue is not the SPI clock being too high frequency (4 MHz). It could be 0.1 Hz and the signal edges would still ring, as it's the edge rate that defines the bandwidth. Typically microcontroller IO pins are moderately strong, and can drive for example a 30pF capacitive load with 4ns rise time or 10pF capacitive load with 2.5nS rise time. That's strong enough to drive 100-120MHz signals out from a MCU, according to STM32F207 datasheet.



              What you may be missing is that if your MCU does not have settable pin drive strength, you can slow down the rise/fall times to sane levels by putting for example 33 ohms series terminating resistors at the device that is driving the pins. This way the edges need less bandwidth and there is less ringing. 4MHz SPI running for 5cm of length should not be an issue, but do check what rise/fall times your chips need to work.



              Another issue is that your oscilloscope might show ringing for signals just because the scope or probes have 100MHz BW limit and signal edges are fast enough to go over 100MHz BW limit.






              share|improve this answer









              $endgroup$












              • $begingroup$
                The edge rate that I've measured is around 300ns. There is a good bit of ringing on the MOSI line present but it's gone by the time the rising clock edge happens. I could probably get away with an 8MHz bus clock but not any faster without the ringing becoming an issue.
                $endgroup$
                – Jeff Wahaus
                Apr 13 at 0:08













              2












              2








              2





              $begingroup$

              The issue is not the SPI clock being too high frequency (4 MHz). It could be 0.1 Hz and the signal edges would still ring, as it's the edge rate that defines the bandwidth. Typically microcontroller IO pins are moderately strong, and can drive for example a 30pF capacitive load with 4ns rise time or 10pF capacitive load with 2.5nS rise time. That's strong enough to drive 100-120MHz signals out from a MCU, according to STM32F207 datasheet.



              What you may be missing is that if your MCU does not have settable pin drive strength, you can slow down the rise/fall times to sane levels by putting for example 33 ohms series terminating resistors at the device that is driving the pins. This way the edges need less bandwidth and there is less ringing. 4MHz SPI running for 5cm of length should not be an issue, but do check what rise/fall times your chips need to work.



              Another issue is that your oscilloscope might show ringing for signals just because the scope or probes have 100MHz BW limit and signal edges are fast enough to go over 100MHz BW limit.






              share|improve this answer









              $endgroup$



              The issue is not the SPI clock being too high frequency (4 MHz). It could be 0.1 Hz and the signal edges would still ring, as it's the edge rate that defines the bandwidth. Typically microcontroller IO pins are moderately strong, and can drive for example a 30pF capacitive load with 4ns rise time or 10pF capacitive load with 2.5nS rise time. That's strong enough to drive 100-120MHz signals out from a MCU, according to STM32F207 datasheet.



              What you may be missing is that if your MCU does not have settable pin drive strength, you can slow down the rise/fall times to sane levels by putting for example 33 ohms series terminating resistors at the device that is driving the pins. This way the edges need less bandwidth and there is less ringing. 4MHz SPI running for 5cm of length should not be an issue, but do check what rise/fall times your chips need to work.



              Another issue is that your oscilloscope might show ringing for signals just because the scope or probes have 100MHz BW limit and signal edges are fast enough to go over 100MHz BW limit.







              share|improve this answer












              share|improve this answer



              share|improve this answer










              answered Apr 11 at 18:46









              JustmeJustme

              2,3881413




              2,3881413











              • $begingroup$
                The edge rate that I've measured is around 300ns. There is a good bit of ringing on the MOSI line present but it's gone by the time the rising clock edge happens. I could probably get away with an 8MHz bus clock but not any faster without the ringing becoming an issue.
                $endgroup$
                – Jeff Wahaus
                Apr 13 at 0:08
















              • $begingroup$
                The edge rate that I've measured is around 300ns. There is a good bit of ringing on the MOSI line present but it's gone by the time the rising clock edge happens. I could probably get away with an 8MHz bus clock but not any faster without the ringing becoming an issue.
                $endgroup$
                – Jeff Wahaus
                Apr 13 at 0:08















              $begingroup$
              The edge rate that I've measured is around 300ns. There is a good bit of ringing on the MOSI line present but it's gone by the time the rising clock edge happens. I could probably get away with an 8MHz bus clock but not any faster without the ringing becoming an issue.
              $endgroup$
              – Jeff Wahaus
              Apr 13 at 0:08




              $begingroup$
              The edge rate that I've measured is around 300ns. There is a good bit of ringing on the MOSI line present but it's gone by the time the rising clock edge happens. I could probably get away with an 8MHz bus clock but not any faster without the ringing becoming an issue.
              $endgroup$
              – Jeff Wahaus
              Apr 13 at 0:08











              1












              $begingroup$

              5MHz is slow. But the bandwidth of the signal depends on risetime.



              BW=0.35/Tr so it is 10ns=0.01us the BW= 0.35/0.01us = 35MHz



              But if the signal was HDMI or CML logic or even just 1ns risetime, then ;



              BW= 350MHz Then we have two Rules of Thumb more maximum path length to ignore reflections from vias or long traces;



              1: 1/10 Lambda the 1ns rise time is using v=c/sqrt(Er)

              - max path length is 8.5 cm



              1. Slewrate /4

                • max path length is 4.5 cm


              For better analysis use some calc tools like Saturn PCB.exe or analysis tools using the ESL,ESR,C(pf) of your via inductance and capacitance into a model to see the result using the VOl/Iol=Ron driver impedance.



              Then model into your favorite simulator. Mine is Falstad's




              Your results are ONLY as good as your model values as FALSTAD uses ideal voltage sources and wires are ideal. So you add R,L,C values to suit your model.







              share|improve this answer









              $endgroup$

















                1












                $begingroup$

                5MHz is slow. But the bandwidth of the signal depends on risetime.



                BW=0.35/Tr so it is 10ns=0.01us the BW= 0.35/0.01us = 35MHz



                But if the signal was HDMI or CML logic or even just 1ns risetime, then ;



                BW= 350MHz Then we have two Rules of Thumb more maximum path length to ignore reflections from vias or long traces;



                1: 1/10 Lambda the 1ns rise time is using v=c/sqrt(Er)

                - max path length is 8.5 cm



                1. Slewrate /4

                  • max path length is 4.5 cm


                For better analysis use some calc tools like Saturn PCB.exe or analysis tools using the ESL,ESR,C(pf) of your via inductance and capacitance into a model to see the result using the VOl/Iol=Ron driver impedance.



                Then model into your favorite simulator. Mine is Falstad's




                Your results are ONLY as good as your model values as FALSTAD uses ideal voltage sources and wires are ideal. So you add R,L,C values to suit your model.







                share|improve this answer









                $endgroup$















                  1












                  1








                  1





                  $begingroup$

                  5MHz is slow. But the bandwidth of the signal depends on risetime.



                  BW=0.35/Tr so it is 10ns=0.01us the BW= 0.35/0.01us = 35MHz



                  But if the signal was HDMI or CML logic or even just 1ns risetime, then ;



                  BW= 350MHz Then we have two Rules of Thumb more maximum path length to ignore reflections from vias or long traces;



                  1: 1/10 Lambda the 1ns rise time is using v=c/sqrt(Er)

                  - max path length is 8.5 cm



                  1. Slewrate /4

                    • max path length is 4.5 cm


                  For better analysis use some calc tools like Saturn PCB.exe or analysis tools using the ESL,ESR,C(pf) of your via inductance and capacitance into a model to see the result using the VOl/Iol=Ron driver impedance.



                  Then model into your favorite simulator. Mine is Falstad's




                  Your results are ONLY as good as your model values as FALSTAD uses ideal voltage sources and wires are ideal. So you add R,L,C values to suit your model.







                  share|improve this answer









                  $endgroup$



                  5MHz is slow. But the bandwidth of the signal depends on risetime.



                  BW=0.35/Tr so it is 10ns=0.01us the BW= 0.35/0.01us = 35MHz



                  But if the signal was HDMI or CML logic or even just 1ns risetime, then ;



                  BW= 350MHz Then we have two Rules of Thumb more maximum path length to ignore reflections from vias or long traces;



                  1: 1/10 Lambda the 1ns rise time is using v=c/sqrt(Er)

                  - max path length is 8.5 cm



                  1. Slewrate /4

                    • max path length is 4.5 cm


                  For better analysis use some calc tools like Saturn PCB.exe or analysis tools using the ESL,ESR,C(pf) of your via inductance and capacitance into a model to see the result using the VOl/Iol=Ron driver impedance.



                  Then model into your favorite simulator. Mine is Falstad's




                  Your results are ONLY as good as your model values as FALSTAD uses ideal voltage sources and wires are ideal. So you add R,L,C values to suit your model.








                  share|improve this answer












                  share|improve this answer



                  share|improve this answer










                  answered Apr 11 at 16:28









                  Sunnyskyguy EE75Sunnyskyguy EE75

                  71.7k227103




                  71.7k227103



























                      draft saved

                      draft discarded
















































                      Thanks for contributing an answer to Electrical Engineering Stack Exchange!


                      • Please be sure to answer the question. Provide details and share your research!

                      But avoid


                      • Asking for help, clarification, or responding to other answers.

                      • Making statements based on opinion; back them up with references or personal experience.

                      Use MathJax to format equations. MathJax reference.


                      To learn more, see our tips on writing great answers.




                      draft saved


                      draft discarded














                      StackExchange.ready(
                      function ()
                      StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2felectronics.stackexchange.com%2fquestions%2f432026%2fhow-do-pcb-vias-affect-signal-quality%23new-answer', 'question_page');

                      );

                      Post as a guest















                      Required, but never shown





















































                      Required, but never shown














                      Required, but never shown












                      Required, but never shown







                      Required, but never shown

































                      Required, but never shown














                      Required, but never shown












                      Required, but never shown







                      Required, but never shown







                      Popular posts from this blog

                      getting Checkpoint VPN SSL Network Extender working in the command lineHow to connect to CheckPoint VPN on Ubuntu 18.04LTS?Will the Linux ( red-hat ) Open VPNC Client connect to checkpoint or nortel VPN gateways?VPN client for linux machine + support checkpoint gatewayVPN SSL Network Extender in FirefoxLinux Checkpoint SNX tool configuration issuesCheck Point - Connect under Linux - snx + OTPSNX VPN Ububuntu 18.XXUsing Checkpoint VPN SSL Network Extender CLI with certificateVPN with network manager (nm-applet) is not workingWill the Linux ( red-hat ) Open VPNC Client connect to checkpoint or nortel VPN gateways?VPN client for linux machine + support checkpoint gatewayImport VPN config files to NetworkManager from command lineTrouble connecting to VPN using network-manager, while command line worksStart a VPN connection with PPTP protocol on command linestarting a docker service daemon breaks the vpn networkCan't connect to vpn with Network-managerVPN SSL Network Extender in FirefoxUsing Checkpoint VPN SSL Network Extender CLI with certificate

                      Cannot Extend partition with GParted The 2019 Stack Overflow Developer Survey Results Are In Announcing the arrival of Valued Associate #679: Cesar Manara Planned maintenance scheduled April 17/18, 2019 at 00:00UTC (8:00pm US/Eastern) 2019 Community Moderator Election ResultsCan't increase partition size with GParted?GParted doesn't recognize the unallocated space after my current partitionWhat is the best way to add unallocated space located before to Ubuntu 12.04 partition with GParted live?I can't figure out how to extend my Arch home partition into free spaceGparted Linux Mint 18.1 issueTrying to extend but swap partition is showing as Unknown in Gparted, shows proper from fdiskRearrange partitions in gparted to extend a partitionUnable to extend partition even though unallocated space is next to it using GPartedAllocate free space to root partitiongparted: how to merge unallocated space with a partition

                      NetworkManager fails with “Could not find source connection”Trouble connecting to VPN using network-manager, while command line worksHow can I be notified about state changes to a VPN adapterBacktrack 5 R3 - Refuses to connect to VPNFeed all traffic through OpenVPN for a specific network namespace onlyRun daemon on startup in Debian once openvpn connection establishedpfsense tcp connection between openvpn and lan is brokenInternet connection problem with web browsers onlyWhy does NetworkManager explicitly support tun/tap devices?Browser issues with VPNTwo IP addresses assigned to the same network card - OpenVPN issues?Cannot connect to WiFi with nmcli, although secrets are provided