How do PCB vias affect signal quality? The 2019 Stack Overflow Developer Survey Results Are InSeries resistor on digital signal linesReducing cost by eliminating microvias when designing a PCB with buried viasA few questions about vias and pads on a PCB50MHz SPI PCB routing, use vias or resistors?Good method to remove tenting on vias after assembly for debugging?PCB stackup for Mixed-Signal ICIs using vias for split data buses a bad idea?4 layers PCB stack - (signal, signal, power, ground)PCB Design/Grounding: Minimize noiseVia in between differential traces - how bad is it?Multiple vias on PCB

How can I define good in a religion that claims no moral authority?

Accepted by European university, rejected by all American ones I applied to? Possible reasons?

If I score a critical hit on an 18 or higher, what are my chances of getting a critical hit if I roll 3d20?

How do I free up internal storage if I don't have any apps downloaded?

What to do when moving next to a bird sanctuary with a loosely-domesticated cat?

Does HR tell a hiring manager about salary negotiations?

Is it correct to say the Neural Networks are an alternative way of performing Maximum Likelihood Estimation? if not, why?

Is bread bad for ducks?

Will it cause any balance problems to have PCs level up and gain the benefits of a long rest mid-fight?

What do I do when my TA workload is more than expected?

For what reasons would an animal species NOT cross a *horizontal* land bridge?

I am an eight letter word. What am I?

Currents/voltages graph for an electrical circuit

Why are there uneven bright areas in this photo of black hole?

The phrase "to the numbers born"?

Why “相同意思的词” is called “同义词” instead of "同意词"?

Ubuntu Server install with full GUI

Star Trek - X-shaped Item on Regula/Orbital Office Starbases

Cooking pasta in a water boiler

Can there be female White Walkers?

Does adding complexity mean a more secure cipher?

Keeping a retro style to sci-fi spaceships?

Computing the expectation of the number of balls in a box

Old scifi movie from the 50s or 60s with men in solid red uniforms who interrogate a spy from the past



How do PCB vias affect signal quality?



The 2019 Stack Overflow Developer Survey Results Are InSeries resistor on digital signal linesReducing cost by eliminating microvias when designing a PCB with buried viasA few questions about vias and pads on a PCB50MHz SPI PCB routing, use vias or resistors?Good method to remove tenting on vias after assembly for debugging?PCB stackup for Mixed-Signal ICIs using vias for split data buses a bad idea?4 layers PCB stack - (signal, signal, power, ground)PCB Design/Grounding: Minimize noiseVia in between differential traces - how bad is it?Multiple vias on PCB



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








4












$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?










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
    6 hours ago






  • 5




    $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
    6 hours ago











  • $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
    6 hours ago










  • $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
    6 hours ago

















4












$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?










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
    6 hours ago






  • 5




    $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
    6 hours ago











  • $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
    6 hours ago










  • $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
    6 hours ago













4












4








4





$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?










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?







pcb noise via






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited 6 hours ago









JYelton

16.4k2891193




16.4k2891193










asked 6 hours ago









Jeff WahausJeff Wahaus

2977




2977











  • $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
    6 hours ago






  • 5




    $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
    6 hours ago











  • $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
    6 hours ago










  • $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
    6 hours ago
















  • $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
    6 hours ago






  • 5




    $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
    6 hours ago











  • $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
    6 hours ago










  • $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
    6 hours ago















$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
6 hours ago




$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
6 hours ago




5




5




$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
6 hours ago





$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
6 hours ago













$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
6 hours ago




$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
6 hours ago












$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
6 hours ago




$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
6 hours ago










4 Answers
4






active

oldest

votes


















2












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

    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$




















      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$




















        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("mathjaxEditing", function ()
          StackExchange.MarkdownEditor.creationCallbacks.add(function (editor, postfix)
          StackExchange.mathjaxEditing.prepareWmdForMathJax(editor, postfix, [["\$", "\$"]]);
          );
          );
          , "mathjax-editing");

          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









          2












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

            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












              2








              2





              $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 6 hours ago









              JYeltonJYelton

              16.4k2891193




              16.4k2891193























                  2












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

















                    2












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















                      2












                      2








                      2





                      $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 6 hours ago









                      laptop2dlaptop2d

                      27.5k123785




                      27.5k123785





















                          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$

















                            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$















                              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 4 hours ago









                              JustmeJustme

                              2,2331413




                              2,2331413





















                                  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 6 hours ago









                                      Sunnyskyguy EE75Sunnyskyguy EE75

                                      71.4k227103




                                      71.4k227103



























                                          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

                                          How to create a command for the “strange m” symbol in latex? Announcing the arrival of Valued Associate #679: Cesar Manara Planned maintenance scheduled April 23, 2019 at 23:30 UTC (7:30pm US/Eastern)How do you make your own symbol when Detexify fails?Writing bold small caps with mathpazo packageplus-minus symbol with parenthesis around the minus signGreek character in Beamer document titleHow to create dashed right arrow over symbol?Currency symbol: Turkish LiraDouble prec as a single symbol?Plus Sign Too Big; How to Call adfbullet?Is there a TeX macro for three-legged pi?How do I get my integral-like symbol to align like the integral?How to selectively substitute a letter with another symbol representing the same letterHow do I generate a less than symbol and vertical bar that are the same height?

                                          Category:Tremithousa Media in category "Tremithousa"Navigation menuUpload media34° 49′ 02.7″ N, 32° 26′ 37.32″ EOpenStreetMapGoogle EarthProximityramaReasonatorScholiaStatisticsWikiShootMe

                                          Dokschytsy (Steed) Kwelen | NawigatsjuunBelarus: Vitebsk Region, citypopulation.de