Is the speed of electrical signals always constant within a CPU?











up vote
2
down vote

favorite












Microprocessors rely on assumptions about how long it takes for electrical signals to propagate through combinational logic circuits. As far as I understand from reading "Modern processor design", correct functioning seems to require that the signals neither take too long nor too short to arrive at their destination. I know that electrical signals travel roughly at the speed of light.



This made me wonder: is the signal time within a cpu constant? Or does it depend on e.g. the temperature of the cpu or some other variable? It seems to me that this would introduce necessary complications in the design.










share|improve this question







New contributor




user56834 is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.
















  • 1




    Gates propagate signals at about a one-hundredth to one-thousandth of the speed of light given the sort of dimensions they have and many can be significantly longer. I think speed of light might be a red herring in your understanding but I'm interested in what others say.
    – Andy aka
    Nov 29 at 10:22










  • I've a relative working in CPU design. The comment is "the wiring became the limiting factor in speed, around 1990". This means the wiring-resistance and the CMOS gate capacitances are defining the time constants.
    – analogsystemsrf
    Nov 30 at 3:49















up vote
2
down vote

favorite












Microprocessors rely on assumptions about how long it takes for electrical signals to propagate through combinational logic circuits. As far as I understand from reading "Modern processor design", correct functioning seems to require that the signals neither take too long nor too short to arrive at their destination. I know that electrical signals travel roughly at the speed of light.



This made me wonder: is the signal time within a cpu constant? Or does it depend on e.g. the temperature of the cpu or some other variable? It seems to me that this would introduce necessary complications in the design.










share|improve this question







New contributor




user56834 is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.
















  • 1




    Gates propagate signals at about a one-hundredth to one-thousandth of the speed of light given the sort of dimensions they have and many can be significantly longer. I think speed of light might be a red herring in your understanding but I'm interested in what others say.
    – Andy aka
    Nov 29 at 10:22










  • I've a relative working in CPU design. The comment is "the wiring became the limiting factor in speed, around 1990". This means the wiring-resistance and the CMOS gate capacitances are defining the time constants.
    – analogsystemsrf
    Nov 30 at 3:49













up vote
2
down vote

favorite









up vote
2
down vote

favorite











Microprocessors rely on assumptions about how long it takes for electrical signals to propagate through combinational logic circuits. As far as I understand from reading "Modern processor design", correct functioning seems to require that the signals neither take too long nor too short to arrive at their destination. I know that electrical signals travel roughly at the speed of light.



This made me wonder: is the signal time within a cpu constant? Or does it depend on e.g. the temperature of the cpu or some other variable? It seems to me that this would introduce necessary complications in the design.










share|improve this question







New contributor




user56834 is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.











Microprocessors rely on assumptions about how long it takes for electrical signals to propagate through combinational logic circuits. As far as I understand from reading "Modern processor design", correct functioning seems to require that the signals neither take too long nor too short to arrive at their destination. I know that electrical signals travel roughly at the speed of light.



This made me wonder: is the signal time within a cpu constant? Or does it depend on e.g. the temperature of the cpu or some other variable? It seems to me that this would introduce necessary complications in the design.







light cpu electricity






share|improve this question







New contributor




user56834 is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.











share|improve this question







New contributor




user56834 is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.









share|improve this question




share|improve this question






New contributor




user56834 is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.









asked Nov 29 at 10:11









user56834

1072




1072




New contributor




user56834 is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.





New contributor





user56834 is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.






user56834 is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.








  • 1




    Gates propagate signals at about a one-hundredth to one-thousandth of the speed of light given the sort of dimensions they have and many can be significantly longer. I think speed of light might be a red herring in your understanding but I'm interested in what others say.
    – Andy aka
    Nov 29 at 10:22










  • I've a relative working in CPU design. The comment is "the wiring became the limiting factor in speed, around 1990". This means the wiring-resistance and the CMOS gate capacitances are defining the time constants.
    – analogsystemsrf
    Nov 30 at 3:49














  • 1




    Gates propagate signals at about a one-hundredth to one-thousandth of the speed of light given the sort of dimensions they have and many can be significantly longer. I think speed of light might be a red herring in your understanding but I'm interested in what others say.
    – Andy aka
    Nov 29 at 10:22










  • I've a relative working in CPU design. The comment is "the wiring became the limiting factor in speed, around 1990". This means the wiring-resistance and the CMOS gate capacitances are defining the time constants.
    – analogsystemsrf
    Nov 30 at 3:49








1




1




Gates propagate signals at about a one-hundredth to one-thousandth of the speed of light given the sort of dimensions they have and many can be significantly longer. I think speed of light might be a red herring in your understanding but I'm interested in what others say.
– Andy aka
Nov 29 at 10:22




Gates propagate signals at about a one-hundredth to one-thousandth of the speed of light given the sort of dimensions they have and many can be significantly longer. I think speed of light might be a red herring in your understanding but I'm interested in what others say.
– Andy aka
Nov 29 at 10:22












I've a relative working in CPU design. The comment is "the wiring became the limiting factor in speed, around 1990". This means the wiring-resistance and the CMOS gate capacitances are defining the time constants.
– analogsystemsrf
Nov 30 at 3:49




I've a relative working in CPU design. The comment is "the wiring became the limiting factor in speed, around 1990". This means the wiring-resistance and the CMOS gate capacitances are defining the time constants.
– analogsystemsrf
Nov 30 at 3:49










2 Answers
2






active

oldest

votes

















up vote
5
down vote













Electromagnetic waves travel at a fraction of the speed of light, depending on the dielectric constant of the medium they are propagating through. If you had ideal components (lossless traces, circuit elements that switch instantaneously, power supplies with no internal impedance, no noise in your signal etc.) maybe you could approach these speeds. The reality is the non-idealities of the circuits will dominate the performance. Signals in a modern processor will be limited by the node capacitance, switching speeds of internal transistors/mosfets and voltage levels necessary to register high/low signals. These metrics will dictate the rise/fall times necessary to transmit information.



Yes, this introduces lots of complexity but that is why there are very smart people with PhDs and entire engineering teams necessary to design integrated circuits. Monitoring these metrics across process variation, temperature variation and voltage variation is part of a robust integrated circuit design and there is no getting away from that complexity.






share|improve this answer























  • My favorite fact about these things is how many modern processors must have multiple clocks on the chip spread around because the clock speeds are so fast, the clock signal wouldn't have time to reach from one side of the chip to the other in the span of a single clock cycle.
    – Shufflepants
    Nov 29 at 16:11












  • @Shufflepants you don't actually need clock edges to arrive at the same cycle as they were produced. You just need them to arrive all at once. Still pretty hard though.
    – John Dvorak
    Nov 29 at 16:18


















up vote
2
down vote













Microprocessors consist of many logic circuits which are made out of standard "gates" like inverters, AND, OR NAND etc. These gates consist of (CMOS) transistors and the behavior of these transistors is indeed dependent on many parameters like temperature and variations in the manufacturing process. This influences the speed at which these gates can reliably operate. The speed is also influenced by for example how many inputs are connected to a certain output. I mean that the architecture of the circuit also plays a significant role.



It would be nearly impossible to make a reliable chip by only relying on these varying delays. You would have to slow down everything a lot to ensure proper operation, for example to make a faster circuit wait for the input of a slower circuit. That's not so efficient and does not result in a fast circuit.



That's why nearly all complex digital circuits like microprocessors are clocked, meaning there is a clock that gives a "hart beat" and every circuit works (only changes state) when this "beat" comes (on the edge of the clock).



Using a clock allows for a much easier and more automated design flow. Still, at the end of the design when the real delays can be determined by specialist tools, simulations can prove if there are still timing issues or not and also suggest what to change to solve these.






share|improve this answer





















    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',
    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
    });


    }
    });






    user56834 is a new contributor. Be nice, and check out our Code of Conduct.










    draft saved

    draft discarded


















    StackExchange.ready(
    function () {
    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2felectronics.stackexchange.com%2fquestions%2f409520%2fis-the-speed-of-electrical-signals-always-constant-within-a-cpu%23new-answer', 'question_page');
    }
    );

    Post as a guest















    Required, but never shown

























    2 Answers
    2






    active

    oldest

    votes








    2 Answers
    2






    active

    oldest

    votes









    active

    oldest

    votes






    active

    oldest

    votes








    up vote
    5
    down vote













    Electromagnetic waves travel at a fraction of the speed of light, depending on the dielectric constant of the medium they are propagating through. If you had ideal components (lossless traces, circuit elements that switch instantaneously, power supplies with no internal impedance, no noise in your signal etc.) maybe you could approach these speeds. The reality is the non-idealities of the circuits will dominate the performance. Signals in a modern processor will be limited by the node capacitance, switching speeds of internal transistors/mosfets and voltage levels necessary to register high/low signals. These metrics will dictate the rise/fall times necessary to transmit information.



    Yes, this introduces lots of complexity but that is why there are very smart people with PhDs and entire engineering teams necessary to design integrated circuits. Monitoring these metrics across process variation, temperature variation and voltage variation is part of a robust integrated circuit design and there is no getting away from that complexity.






    share|improve this answer























    • My favorite fact about these things is how many modern processors must have multiple clocks on the chip spread around because the clock speeds are so fast, the clock signal wouldn't have time to reach from one side of the chip to the other in the span of a single clock cycle.
      – Shufflepants
      Nov 29 at 16:11












    • @Shufflepants you don't actually need clock edges to arrive at the same cycle as they were produced. You just need them to arrive all at once. Still pretty hard though.
      – John Dvorak
      Nov 29 at 16:18















    up vote
    5
    down vote













    Electromagnetic waves travel at a fraction of the speed of light, depending on the dielectric constant of the medium they are propagating through. If you had ideal components (lossless traces, circuit elements that switch instantaneously, power supplies with no internal impedance, no noise in your signal etc.) maybe you could approach these speeds. The reality is the non-idealities of the circuits will dominate the performance. Signals in a modern processor will be limited by the node capacitance, switching speeds of internal transistors/mosfets and voltage levels necessary to register high/low signals. These metrics will dictate the rise/fall times necessary to transmit information.



    Yes, this introduces lots of complexity but that is why there are very smart people with PhDs and entire engineering teams necessary to design integrated circuits. Monitoring these metrics across process variation, temperature variation and voltage variation is part of a robust integrated circuit design and there is no getting away from that complexity.






    share|improve this answer























    • My favorite fact about these things is how many modern processors must have multiple clocks on the chip spread around because the clock speeds are so fast, the clock signal wouldn't have time to reach from one side of the chip to the other in the span of a single clock cycle.
      – Shufflepants
      Nov 29 at 16:11












    • @Shufflepants you don't actually need clock edges to arrive at the same cycle as they were produced. You just need them to arrive all at once. Still pretty hard though.
      – John Dvorak
      Nov 29 at 16:18













    up vote
    5
    down vote










    up vote
    5
    down vote









    Electromagnetic waves travel at a fraction of the speed of light, depending on the dielectric constant of the medium they are propagating through. If you had ideal components (lossless traces, circuit elements that switch instantaneously, power supplies with no internal impedance, no noise in your signal etc.) maybe you could approach these speeds. The reality is the non-idealities of the circuits will dominate the performance. Signals in a modern processor will be limited by the node capacitance, switching speeds of internal transistors/mosfets and voltage levels necessary to register high/low signals. These metrics will dictate the rise/fall times necessary to transmit information.



    Yes, this introduces lots of complexity but that is why there are very smart people with PhDs and entire engineering teams necessary to design integrated circuits. Monitoring these metrics across process variation, temperature variation and voltage variation is part of a robust integrated circuit design and there is no getting away from that complexity.






    share|improve this answer














    Electromagnetic waves travel at a fraction of the speed of light, depending on the dielectric constant of the medium they are propagating through. If you had ideal components (lossless traces, circuit elements that switch instantaneously, power supplies with no internal impedance, no noise in your signal etc.) maybe you could approach these speeds. The reality is the non-idealities of the circuits will dominate the performance. Signals in a modern processor will be limited by the node capacitance, switching speeds of internal transistors/mosfets and voltage levels necessary to register high/low signals. These metrics will dictate the rise/fall times necessary to transmit information.



    Yes, this introduces lots of complexity but that is why there are very smart people with PhDs and entire engineering teams necessary to design integrated circuits. Monitoring these metrics across process variation, temperature variation and voltage variation is part of a robust integrated circuit design and there is no getting away from that complexity.







    share|improve this answer














    share|improve this answer



    share|improve this answer








    edited Nov 29 at 10:42

























    answered Nov 29 at 10:24









    Gonzik007

    2,3721021




    2,3721021












    • My favorite fact about these things is how many modern processors must have multiple clocks on the chip spread around because the clock speeds are so fast, the clock signal wouldn't have time to reach from one side of the chip to the other in the span of a single clock cycle.
      – Shufflepants
      Nov 29 at 16:11












    • @Shufflepants you don't actually need clock edges to arrive at the same cycle as they were produced. You just need them to arrive all at once. Still pretty hard though.
      – John Dvorak
      Nov 29 at 16:18


















    • My favorite fact about these things is how many modern processors must have multiple clocks on the chip spread around because the clock speeds are so fast, the clock signal wouldn't have time to reach from one side of the chip to the other in the span of a single clock cycle.
      – Shufflepants
      Nov 29 at 16:11












    • @Shufflepants you don't actually need clock edges to arrive at the same cycle as they were produced. You just need them to arrive all at once. Still pretty hard though.
      – John Dvorak
      Nov 29 at 16:18
















    My favorite fact about these things is how many modern processors must have multiple clocks on the chip spread around because the clock speeds are so fast, the clock signal wouldn't have time to reach from one side of the chip to the other in the span of a single clock cycle.
    – Shufflepants
    Nov 29 at 16:11






    My favorite fact about these things is how many modern processors must have multiple clocks on the chip spread around because the clock speeds are so fast, the clock signal wouldn't have time to reach from one side of the chip to the other in the span of a single clock cycle.
    – Shufflepants
    Nov 29 at 16:11














    @Shufflepants you don't actually need clock edges to arrive at the same cycle as they were produced. You just need them to arrive all at once. Still pretty hard though.
    – John Dvorak
    Nov 29 at 16:18




    @Shufflepants you don't actually need clock edges to arrive at the same cycle as they were produced. You just need them to arrive all at once. Still pretty hard though.
    – John Dvorak
    Nov 29 at 16:18












    up vote
    2
    down vote













    Microprocessors consist of many logic circuits which are made out of standard "gates" like inverters, AND, OR NAND etc. These gates consist of (CMOS) transistors and the behavior of these transistors is indeed dependent on many parameters like temperature and variations in the manufacturing process. This influences the speed at which these gates can reliably operate. The speed is also influenced by for example how many inputs are connected to a certain output. I mean that the architecture of the circuit also plays a significant role.



    It would be nearly impossible to make a reliable chip by only relying on these varying delays. You would have to slow down everything a lot to ensure proper operation, for example to make a faster circuit wait for the input of a slower circuit. That's not so efficient and does not result in a fast circuit.



    That's why nearly all complex digital circuits like microprocessors are clocked, meaning there is a clock that gives a "hart beat" and every circuit works (only changes state) when this "beat" comes (on the edge of the clock).



    Using a clock allows for a much easier and more automated design flow. Still, at the end of the design when the real delays can be determined by specialist tools, simulations can prove if there are still timing issues or not and also suggest what to change to solve these.






    share|improve this answer

























      up vote
      2
      down vote













      Microprocessors consist of many logic circuits which are made out of standard "gates" like inverters, AND, OR NAND etc. These gates consist of (CMOS) transistors and the behavior of these transistors is indeed dependent on many parameters like temperature and variations in the manufacturing process. This influences the speed at which these gates can reliably operate. The speed is also influenced by for example how many inputs are connected to a certain output. I mean that the architecture of the circuit also plays a significant role.



      It would be nearly impossible to make a reliable chip by only relying on these varying delays. You would have to slow down everything a lot to ensure proper operation, for example to make a faster circuit wait for the input of a slower circuit. That's not so efficient and does not result in a fast circuit.



      That's why nearly all complex digital circuits like microprocessors are clocked, meaning there is a clock that gives a "hart beat" and every circuit works (only changes state) when this "beat" comes (on the edge of the clock).



      Using a clock allows for a much easier and more automated design flow. Still, at the end of the design when the real delays can be determined by specialist tools, simulations can prove if there are still timing issues or not and also suggest what to change to solve these.






      share|improve this answer























        up vote
        2
        down vote










        up vote
        2
        down vote









        Microprocessors consist of many logic circuits which are made out of standard "gates" like inverters, AND, OR NAND etc. These gates consist of (CMOS) transistors and the behavior of these transistors is indeed dependent on many parameters like temperature and variations in the manufacturing process. This influences the speed at which these gates can reliably operate. The speed is also influenced by for example how many inputs are connected to a certain output. I mean that the architecture of the circuit also plays a significant role.



        It would be nearly impossible to make a reliable chip by only relying on these varying delays. You would have to slow down everything a lot to ensure proper operation, for example to make a faster circuit wait for the input of a slower circuit. That's not so efficient and does not result in a fast circuit.



        That's why nearly all complex digital circuits like microprocessors are clocked, meaning there is a clock that gives a "hart beat" and every circuit works (only changes state) when this "beat" comes (on the edge of the clock).



        Using a clock allows for a much easier and more automated design flow. Still, at the end of the design when the real delays can be determined by specialist tools, simulations can prove if there are still timing issues or not and also suggest what to change to solve these.






        share|improve this answer












        Microprocessors consist of many logic circuits which are made out of standard "gates" like inverters, AND, OR NAND etc. These gates consist of (CMOS) transistors and the behavior of these transistors is indeed dependent on many parameters like temperature and variations in the manufacturing process. This influences the speed at which these gates can reliably operate. The speed is also influenced by for example how many inputs are connected to a certain output. I mean that the architecture of the circuit also plays a significant role.



        It would be nearly impossible to make a reliable chip by only relying on these varying delays. You would have to slow down everything a lot to ensure proper operation, for example to make a faster circuit wait for the input of a slower circuit. That's not so efficient and does not result in a fast circuit.



        That's why nearly all complex digital circuits like microprocessors are clocked, meaning there is a clock that gives a "hart beat" and every circuit works (only changes state) when this "beat" comes (on the edge of the clock).



        Using a clock allows for a much easier and more automated design flow. Still, at the end of the design when the real delays can be determined by specialist tools, simulations can prove if there are still timing issues or not and also suggest what to change to solve these.







        share|improve this answer












        share|improve this answer



        share|improve this answer










        answered Nov 29 at 13:18









        Bimpelrekkie

        46.1k240103




        46.1k240103






















            user56834 is a new contributor. Be nice, and check out our Code of Conduct.










            draft saved

            draft discarded


















            user56834 is a new contributor. Be nice, and check out our Code of Conduct.













            user56834 is a new contributor. Be nice, and check out our Code of Conduct.












            user56834 is a new contributor. Be nice, and check out our Code of Conduct.
















            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.





            Some of your past answers have not been well-received, and you're in danger of being blocked from answering.


            Please pay close attention to the following guidance:


            • 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.


            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%2f409520%2fis-the-speed-of-electrical-signals-always-constant-within-a-cpu%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

            QoS: MAC-Priority for clients behind a repeater

            Ивакино (Тотемский район)

            Can't locate Autom4te/ChannelDefs.pm in @INC (when it definitely is there)