Why is there a PLL in CPU? The Next CEO of Stack OverflowPLL - why compare phases not frequenciesCreating a clock multiplier using a PLLExample of a PLL for video genlockingWhat limits CPU speed?CPU and clock rateUsing CPU heat to generate electricityIs it possible to drive a HDMI output without exact clock frequencies (74.25 MHz, etc.)?Maximum CPU Frequency of PIC24FJ256GA705 That I Can Get with 8MHz CrystalWhy include frequency dividers in this PLL circuit?PLL placing fails on Lattice 5LP1K

Should I tutor a student who I know has cheated on their homework?

Would a completely good Muggle be able to use a wand?

Yu-Gi-Oh cards in Python 3

How to count occurrences of text in a file?

Is it ever safe to open a suspicious HTML file (e.g. email attachment)?

How to invert MapIndexed on a ragged structure? How to construct a tree from rules?

Why does the flight controls check come before arming the autobrake on the A320?

Is it okay to majorly distort historical facts while writing a fiction story?

Is there a way to save my career from absolute disaster?

The past simple of "gaslight" – "gaslighted" or "gaslit"?

Is French Guiana a (hard) EU border?

How to write a definition with variants?

Grabbing quick drinks

Is it possible to replace duplicates of a character with one character using tr

Domestic-to-international connection at Orlando (MCO)

Do they change the text of the seder in Israel?

How do I align (1) and (2)?

Method for adding error messages to a dictionary given a key

Which one is the true statement?

Is there a difference between "Fahrstuhl" and "Aufzug"

I believe this to be a fraud - hired, then asked to cash check and send cash as Bitcoin

Why doesn't UK go for the same deal Japan has with EU to resolve Brexit?

Is micro rebar a better way to reinforce concrete than rebar?

Reference request: Grassmannian and Plucker coordinates in type B, C, D



Why is there a PLL in CPU?



The Next CEO of Stack OverflowPLL - why compare phases not frequenciesCreating a clock multiplier using a PLLExample of a PLL for video genlockingWhat limits CPU speed?CPU and clock rateUsing CPU heat to generate electricityIs it possible to drive a HDMI output without exact clock frequencies (74.25 MHz, etc.)?Maximum CPU Frequency of PIC24FJ256GA705 That I Can Get with 8MHz CrystalWhy include frequency dividers in this PLL circuit?PLL placing fails on Lattice 5LP1K










7












$begingroup$


I read that PLL are used in CPU to generate the clock, but I can't understand why.



I don't really have any guess of why this is.










share|improve this question







New contributor




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







$endgroup$







  • 2




    $begingroup$
    I would shut this question down as "too broad". It is like asking "why are there CMOS gates instead of transistors in a CPU"...
    $endgroup$
    – Ale..chenski
    2 days ago






  • 3




    $begingroup$
    It is probably too broad but I got very relevant answers that will hopefully help other people.
    $endgroup$
    – Jonas Daverio
    2 days ago










  • $begingroup$
    Why close this? It invites tutorial style questions covering the subject in general which will be of ongoing interest to others.
    $endgroup$
    – Russell McMahon
    2 hours ago















7












$begingroup$


I read that PLL are used in CPU to generate the clock, but I can't understand why.



I don't really have any guess of why this is.










share|improve this question







New contributor




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







$endgroup$







  • 2




    $begingroup$
    I would shut this question down as "too broad". It is like asking "why are there CMOS gates instead of transistors in a CPU"...
    $endgroup$
    – Ale..chenski
    2 days ago






  • 3




    $begingroup$
    It is probably too broad but I got very relevant answers that will hopefully help other people.
    $endgroup$
    – Jonas Daverio
    2 days ago










  • $begingroup$
    Why close this? It invites tutorial style questions covering the subject in general which will be of ongoing interest to others.
    $endgroup$
    – Russell McMahon
    2 hours ago













7












7








7


1



$begingroup$


I read that PLL are used in CPU to generate the clock, but I can't understand why.



I don't really have any guess of why this is.










share|improve this question







New contributor




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







$endgroup$




I read that PLL are used in CPU to generate the clock, but I can't understand why.



I don't really have any guess of why this is.







clock cpu pll






share|improve this question







New contributor




Jonas Daverio 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




Jonas Daverio 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




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









asked 2 days ago









Jonas DaverioJonas Daverio

8917




8917




New contributor




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





New contributor





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






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







  • 2




    $begingroup$
    I would shut this question down as "too broad". It is like asking "why are there CMOS gates instead of transistors in a CPU"...
    $endgroup$
    – Ale..chenski
    2 days ago






  • 3




    $begingroup$
    It is probably too broad but I got very relevant answers that will hopefully help other people.
    $endgroup$
    – Jonas Daverio
    2 days ago










  • $begingroup$
    Why close this? It invites tutorial style questions covering the subject in general which will be of ongoing interest to others.
    $endgroup$
    – Russell McMahon
    2 hours ago












  • 2




    $begingroup$
    I would shut this question down as "too broad". It is like asking "why are there CMOS gates instead of transistors in a CPU"...
    $endgroup$
    – Ale..chenski
    2 days ago






  • 3




    $begingroup$
    It is probably too broad but I got very relevant answers that will hopefully help other people.
    $endgroup$
    – Jonas Daverio
    2 days ago










  • $begingroup$
    Why close this? It invites tutorial style questions covering the subject in general which will be of ongoing interest to others.
    $endgroup$
    – Russell McMahon
    2 hours ago







2




2




$begingroup$
I would shut this question down as "too broad". It is like asking "why are there CMOS gates instead of transistors in a CPU"...
$endgroup$
– Ale..chenski
2 days ago




$begingroup$
I would shut this question down as "too broad". It is like asking "why are there CMOS gates instead of transistors in a CPU"...
$endgroup$
– Ale..chenski
2 days ago




3




3




$begingroup$
It is probably too broad but I got very relevant answers that will hopefully help other people.
$endgroup$
– Jonas Daverio
2 days ago




$begingroup$
It is probably too broad but I got very relevant answers that will hopefully help other people.
$endgroup$
– Jonas Daverio
2 days ago












$begingroup$
Why close this? It invites tutorial style questions covering the subject in general which will be of ongoing interest to others.
$endgroup$
– Russell McMahon
2 hours ago




$begingroup$
Why close this? It invites tutorial style questions covering the subject in general which will be of ongoing interest to others.
$endgroup$
– Russell McMahon
2 hours ago










5 Answers
5






active

oldest

votes


















11












$begingroup$

There are several reasons for this. A phase locked loop, or PLL, is a circuit that is used to generate a stable frequency that has a specific mathematical relationship to some reference frequency. Specifically, it is a circuit that is used to control some sort of electrically tunable oscillator (usually a voltage controlled oscillator, or VCO) so that its output is locked into a specific relationship with a reference frequency that is supplied by some sort of stable reference (usually a crystal, crystal oscillator, or silicon MEMS oscillator).



A PLL works by dividing down the output of the VCO and the reference input with frequency dividers, then comparing the frequency and phase of these divided outputs and adjusting the VCO control voltage until the frequency and phase align.



It is possible for a PLL to generate a much higher frequency than the reference frequency - for example, a 100 MHz reference can be multiplied up to several GHz. If the PLL is integrated on the same chip where the high frequency output is used, this can save power and reduce EMI by lowering the frequency that is sent through the circuit board traces. It also makes the board layout simpler.



Since the relationship is determined with simple frequency dividers and it is quite simple to build programmable dividers, it is very easy to change the output frequency of a PLL by simply changing the divider settings. This can enable power savings using a technique called dynamic frequency scaling, where the frequency is adjusted based on the required processor performance to reduce power consumption. It also enables software-based configuration of the frequency, which makes the design of the system much more flexible as software can decide what settings to use at boot time based on detected hardware (for example, looking at CPU socket pin strapping or reading out SPD EEPROM contents on RAM modules during boot).



In a modern CPU, there are going to be multiple PLLs present for providing the clocks for various components. Modern CPUs have a high level of integration and so components that used to be located on separate chips are increasingly integrated onto one die - there is a lot more than a single processing core and a front side bus on a modern CPU. The processing cores themselves will run on one or more clocks that are supplied by one or more PLLs so the core clocks can be adjusted easily, and possibly can be adjusted independently. The PCI express interface will also require PLLs, likely multiple PLLs to support operation at different link rates. Serial ATA connections likewise operate at a different speed and hence will have their own PLLs. Same goes for QPI, hyper transport, USB 3, HDMI, display port, etc. The memory interface likely requires a different PLL to generate the specific clock frequency that the installed memory requires. All of these PLLs would use the same (relatively) low frequency reference oscillator on the motherboard.






share|improve this answer











$endgroup$








  • 7




    $begingroup$
    A critical issue you've missed is the difficulty of making a quartz oscillator above a few hundred MHz. Using a PLL allows the base frequency to be generated with high stability, then upconverted to GHz frequencies with little loss of stability.
    $endgroup$
    – WhatRoughBeast
    2 days ago






  • 1




    $begingroup$
    @WhatRoughBeast: I don't think that's actually nearly as big an issue as moving the full frequency clock across the board without adding jitter and degrading edges. No one works on solving the problem of higher frequency oscillators, because no one would buy the solution.
    $endgroup$
    – Ben Voigt
    yesterday


















7












$begingroup$

Been there, done that.



Apart from other reasons mentioned here is a different one:

The marketing guys want to make the chip design as cheap as possible. Thus they prefer to use cheap crystals. The ones use for Ethernet fall in that category. So you often end up having to use a 25MHz crystal.



At the same time marketing want powerful processors. Thus the processor (Let's call it a LEG++) should be able to run at 1 or 2 GHz.

The only way to do that is to use a PLL.



Or the processor can run at max 64MHz, but they want to have a USB interface which requires a 48MHz Clock. Again PLL to the rescue.



++LEG is not a registered trademark. (At least as far as I know)






share|improve this answer









$endgroup$












  • $begingroup$
    LEG have just released a quintuple Toe version of their famous FOOT processor.
    $endgroup$
    – Tom Carpenter
    yesterday






  • 1




    $begingroup$
    @TomCarpenter: I worked for a company in Cambridge which had a text with the title "ARM shows Intel the Finger" on the wall. It was a beautiful 1'st of April article where they specified a one bit processor called "The Finger". Never found a copy!
    $endgroup$
    – Oldfart
    yesterday


















6












$begingroup$

PLLs can be used to multiply and divide frequencies. CPUs that have PLLs to generate their clocks are highly reconfigurable. The clock speed can be varied relative to the external reference clock over a wide range, and it's the PLL that makes this possible.






share|improve this answer









$endgroup$








  • 2




    $begingroup$
    Also it is not possible to get xtals to oscillate much beyond 100MHZ, so the ref oscillator needs to be multiplied many times to get 1 GHZ to 4 GHZ core frequencies. Core frequency is usually a integer multiple of the ref xtal.
    $endgroup$
    – Sparky256
    2 days ago










  • $begingroup$
    Well, it is more generally going to be an integer ratio of the reference frequency, as the PLL can divide both the VCO output as well as the reference frequency.
    $endgroup$
    – alex.forencich
    2 days ago


















5












$begingroup$

PLLs are used primarily to generate one or more faster or slower clocks from a reference clock.



You might have say a fixed 100MHz crystal, but then want to run your CPU at 2GHz, so a PLL is required to increase the frequency (a 2GHz clock crystal isn't feasible).



Additional you may want to be able to change your CPU frequency on the fly (e.g. a turbo clock). In which case you could have a reconfigurable PLL.



Furthermore you may need a different memory or peripheral clock to your CPU clock. Again a PLL and divider can be used to generate this from a single reference.






share|improve this answer









$endgroup$












  • $begingroup$
    One may want to refer to Wikipedia page of Standard Crtstal Frequencies: en.wikipedia.org/wiki/Crystal_oscillator_frequencies
    $endgroup$
    – Swanand
    yesterday


















2












$begingroup$

3 main reasons;



1) power savings for mobiles and extend CPU life keeping cool.

2) signal integrity is improved using xx multiplier for front side bus due to short wavelength, lower capacitance

3) flexible CPU speeds are possible with throttle on Clock multiplier and Vdd to allow burst CPU power and cool down.



Signal routing of 100MHz FSB is easy, > 1GHz is hard and your CPU is much higher, driver current increases with f and standing wave reflections distort square waves. While reducing CPU clock saves power and reduces temp.






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
    );



    );






    Jonas Daverio 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%2f429532%2fwhy-is-there-a-pll-in-cpu%23new-answer', 'question_page');

    );

    Post as a guest















    Required, but never shown

























    5 Answers
    5






    active

    oldest

    votes








    5 Answers
    5






    active

    oldest

    votes









    active

    oldest

    votes






    active

    oldest

    votes









    11












    $begingroup$

    There are several reasons for this. A phase locked loop, or PLL, is a circuit that is used to generate a stable frequency that has a specific mathematical relationship to some reference frequency. Specifically, it is a circuit that is used to control some sort of electrically tunable oscillator (usually a voltage controlled oscillator, or VCO) so that its output is locked into a specific relationship with a reference frequency that is supplied by some sort of stable reference (usually a crystal, crystal oscillator, or silicon MEMS oscillator).



    A PLL works by dividing down the output of the VCO and the reference input with frequency dividers, then comparing the frequency and phase of these divided outputs and adjusting the VCO control voltage until the frequency and phase align.



    It is possible for a PLL to generate a much higher frequency than the reference frequency - for example, a 100 MHz reference can be multiplied up to several GHz. If the PLL is integrated on the same chip where the high frequency output is used, this can save power and reduce EMI by lowering the frequency that is sent through the circuit board traces. It also makes the board layout simpler.



    Since the relationship is determined with simple frequency dividers and it is quite simple to build programmable dividers, it is very easy to change the output frequency of a PLL by simply changing the divider settings. This can enable power savings using a technique called dynamic frequency scaling, where the frequency is adjusted based on the required processor performance to reduce power consumption. It also enables software-based configuration of the frequency, which makes the design of the system much more flexible as software can decide what settings to use at boot time based on detected hardware (for example, looking at CPU socket pin strapping or reading out SPD EEPROM contents on RAM modules during boot).



    In a modern CPU, there are going to be multiple PLLs present for providing the clocks for various components. Modern CPUs have a high level of integration and so components that used to be located on separate chips are increasingly integrated onto one die - there is a lot more than a single processing core and a front side bus on a modern CPU. The processing cores themselves will run on one or more clocks that are supplied by one or more PLLs so the core clocks can be adjusted easily, and possibly can be adjusted independently. The PCI express interface will also require PLLs, likely multiple PLLs to support operation at different link rates. Serial ATA connections likewise operate at a different speed and hence will have their own PLLs. Same goes for QPI, hyper transport, USB 3, HDMI, display port, etc. The memory interface likely requires a different PLL to generate the specific clock frequency that the installed memory requires. All of these PLLs would use the same (relatively) low frequency reference oscillator on the motherboard.






    share|improve this answer











    $endgroup$








    • 7




      $begingroup$
      A critical issue you've missed is the difficulty of making a quartz oscillator above a few hundred MHz. Using a PLL allows the base frequency to be generated with high stability, then upconverted to GHz frequencies with little loss of stability.
      $endgroup$
      – WhatRoughBeast
      2 days ago






    • 1




      $begingroup$
      @WhatRoughBeast: I don't think that's actually nearly as big an issue as moving the full frequency clock across the board without adding jitter and degrading edges. No one works on solving the problem of higher frequency oscillators, because no one would buy the solution.
      $endgroup$
      – Ben Voigt
      yesterday















    11












    $begingroup$

    There are several reasons for this. A phase locked loop, or PLL, is a circuit that is used to generate a stable frequency that has a specific mathematical relationship to some reference frequency. Specifically, it is a circuit that is used to control some sort of electrically tunable oscillator (usually a voltage controlled oscillator, or VCO) so that its output is locked into a specific relationship with a reference frequency that is supplied by some sort of stable reference (usually a crystal, crystal oscillator, or silicon MEMS oscillator).



    A PLL works by dividing down the output of the VCO and the reference input with frequency dividers, then comparing the frequency and phase of these divided outputs and adjusting the VCO control voltage until the frequency and phase align.



    It is possible for a PLL to generate a much higher frequency than the reference frequency - for example, a 100 MHz reference can be multiplied up to several GHz. If the PLL is integrated on the same chip where the high frequency output is used, this can save power and reduce EMI by lowering the frequency that is sent through the circuit board traces. It also makes the board layout simpler.



    Since the relationship is determined with simple frequency dividers and it is quite simple to build programmable dividers, it is very easy to change the output frequency of a PLL by simply changing the divider settings. This can enable power savings using a technique called dynamic frequency scaling, where the frequency is adjusted based on the required processor performance to reduce power consumption. It also enables software-based configuration of the frequency, which makes the design of the system much more flexible as software can decide what settings to use at boot time based on detected hardware (for example, looking at CPU socket pin strapping or reading out SPD EEPROM contents on RAM modules during boot).



    In a modern CPU, there are going to be multiple PLLs present for providing the clocks for various components. Modern CPUs have a high level of integration and so components that used to be located on separate chips are increasingly integrated onto one die - there is a lot more than a single processing core and a front side bus on a modern CPU. The processing cores themselves will run on one or more clocks that are supplied by one or more PLLs so the core clocks can be adjusted easily, and possibly can be adjusted independently. The PCI express interface will also require PLLs, likely multiple PLLs to support operation at different link rates. Serial ATA connections likewise operate at a different speed and hence will have their own PLLs. Same goes for QPI, hyper transport, USB 3, HDMI, display port, etc. The memory interface likely requires a different PLL to generate the specific clock frequency that the installed memory requires. All of these PLLs would use the same (relatively) low frequency reference oscillator on the motherboard.






    share|improve this answer











    $endgroup$








    • 7




      $begingroup$
      A critical issue you've missed is the difficulty of making a quartz oscillator above a few hundred MHz. Using a PLL allows the base frequency to be generated with high stability, then upconverted to GHz frequencies with little loss of stability.
      $endgroup$
      – WhatRoughBeast
      2 days ago






    • 1




      $begingroup$
      @WhatRoughBeast: I don't think that's actually nearly as big an issue as moving the full frequency clock across the board without adding jitter and degrading edges. No one works on solving the problem of higher frequency oscillators, because no one would buy the solution.
      $endgroup$
      – Ben Voigt
      yesterday













    11












    11








    11





    $begingroup$

    There are several reasons for this. A phase locked loop, or PLL, is a circuit that is used to generate a stable frequency that has a specific mathematical relationship to some reference frequency. Specifically, it is a circuit that is used to control some sort of electrically tunable oscillator (usually a voltage controlled oscillator, or VCO) so that its output is locked into a specific relationship with a reference frequency that is supplied by some sort of stable reference (usually a crystal, crystal oscillator, or silicon MEMS oscillator).



    A PLL works by dividing down the output of the VCO and the reference input with frequency dividers, then comparing the frequency and phase of these divided outputs and adjusting the VCO control voltage until the frequency and phase align.



    It is possible for a PLL to generate a much higher frequency than the reference frequency - for example, a 100 MHz reference can be multiplied up to several GHz. If the PLL is integrated on the same chip where the high frequency output is used, this can save power and reduce EMI by lowering the frequency that is sent through the circuit board traces. It also makes the board layout simpler.



    Since the relationship is determined with simple frequency dividers and it is quite simple to build programmable dividers, it is very easy to change the output frequency of a PLL by simply changing the divider settings. This can enable power savings using a technique called dynamic frequency scaling, where the frequency is adjusted based on the required processor performance to reduce power consumption. It also enables software-based configuration of the frequency, which makes the design of the system much more flexible as software can decide what settings to use at boot time based on detected hardware (for example, looking at CPU socket pin strapping or reading out SPD EEPROM contents on RAM modules during boot).



    In a modern CPU, there are going to be multiple PLLs present for providing the clocks for various components. Modern CPUs have a high level of integration and so components that used to be located on separate chips are increasingly integrated onto one die - there is a lot more than a single processing core and a front side bus on a modern CPU. The processing cores themselves will run on one or more clocks that are supplied by one or more PLLs so the core clocks can be adjusted easily, and possibly can be adjusted independently. The PCI express interface will also require PLLs, likely multiple PLLs to support operation at different link rates. Serial ATA connections likewise operate at a different speed and hence will have their own PLLs. Same goes for QPI, hyper transport, USB 3, HDMI, display port, etc. The memory interface likely requires a different PLL to generate the specific clock frequency that the installed memory requires. All of these PLLs would use the same (relatively) low frequency reference oscillator on the motherboard.






    share|improve this answer











    $endgroup$



    There are several reasons for this. A phase locked loop, or PLL, is a circuit that is used to generate a stable frequency that has a specific mathematical relationship to some reference frequency. Specifically, it is a circuit that is used to control some sort of electrically tunable oscillator (usually a voltage controlled oscillator, or VCO) so that its output is locked into a specific relationship with a reference frequency that is supplied by some sort of stable reference (usually a crystal, crystal oscillator, or silicon MEMS oscillator).



    A PLL works by dividing down the output of the VCO and the reference input with frequency dividers, then comparing the frequency and phase of these divided outputs and adjusting the VCO control voltage until the frequency and phase align.



    It is possible for a PLL to generate a much higher frequency than the reference frequency - for example, a 100 MHz reference can be multiplied up to several GHz. If the PLL is integrated on the same chip where the high frequency output is used, this can save power and reduce EMI by lowering the frequency that is sent through the circuit board traces. It also makes the board layout simpler.



    Since the relationship is determined with simple frequency dividers and it is quite simple to build programmable dividers, it is very easy to change the output frequency of a PLL by simply changing the divider settings. This can enable power savings using a technique called dynamic frequency scaling, where the frequency is adjusted based on the required processor performance to reduce power consumption. It also enables software-based configuration of the frequency, which makes the design of the system much more flexible as software can decide what settings to use at boot time based on detected hardware (for example, looking at CPU socket pin strapping or reading out SPD EEPROM contents on RAM modules during boot).



    In a modern CPU, there are going to be multiple PLLs present for providing the clocks for various components. Modern CPUs have a high level of integration and so components that used to be located on separate chips are increasingly integrated onto one die - there is a lot more than a single processing core and a front side bus on a modern CPU. The processing cores themselves will run on one or more clocks that are supplied by one or more PLLs so the core clocks can be adjusted easily, and possibly can be adjusted independently. The PCI express interface will also require PLLs, likely multiple PLLs to support operation at different link rates. Serial ATA connections likewise operate at a different speed and hence will have their own PLLs. Same goes for QPI, hyper transport, USB 3, HDMI, display port, etc. The memory interface likely requires a different PLL to generate the specific clock frequency that the installed memory requires. All of these PLLs would use the same (relatively) low frequency reference oscillator on the motherboard.







    share|improve this answer














    share|improve this answer



    share|improve this answer








    edited 2 days ago

























    answered 2 days ago









    alex.forencichalex.forencich

    33k14989




    33k14989







    • 7




      $begingroup$
      A critical issue you've missed is the difficulty of making a quartz oscillator above a few hundred MHz. Using a PLL allows the base frequency to be generated with high stability, then upconverted to GHz frequencies with little loss of stability.
      $endgroup$
      – WhatRoughBeast
      2 days ago






    • 1




      $begingroup$
      @WhatRoughBeast: I don't think that's actually nearly as big an issue as moving the full frequency clock across the board without adding jitter and degrading edges. No one works on solving the problem of higher frequency oscillators, because no one would buy the solution.
      $endgroup$
      – Ben Voigt
      yesterday












    • 7




      $begingroup$
      A critical issue you've missed is the difficulty of making a quartz oscillator above a few hundred MHz. Using a PLL allows the base frequency to be generated with high stability, then upconverted to GHz frequencies with little loss of stability.
      $endgroup$
      – WhatRoughBeast
      2 days ago






    • 1




      $begingroup$
      @WhatRoughBeast: I don't think that's actually nearly as big an issue as moving the full frequency clock across the board without adding jitter and degrading edges. No one works on solving the problem of higher frequency oscillators, because no one would buy the solution.
      $endgroup$
      – Ben Voigt
      yesterday







    7




    7




    $begingroup$
    A critical issue you've missed is the difficulty of making a quartz oscillator above a few hundred MHz. Using a PLL allows the base frequency to be generated with high stability, then upconverted to GHz frequencies with little loss of stability.
    $endgroup$
    – WhatRoughBeast
    2 days ago




    $begingroup$
    A critical issue you've missed is the difficulty of making a quartz oscillator above a few hundred MHz. Using a PLL allows the base frequency to be generated with high stability, then upconverted to GHz frequencies with little loss of stability.
    $endgroup$
    – WhatRoughBeast
    2 days ago




    1




    1




    $begingroup$
    @WhatRoughBeast: I don't think that's actually nearly as big an issue as moving the full frequency clock across the board without adding jitter and degrading edges. No one works on solving the problem of higher frequency oscillators, because no one would buy the solution.
    $endgroup$
    – Ben Voigt
    yesterday




    $begingroup$
    @WhatRoughBeast: I don't think that's actually nearly as big an issue as moving the full frequency clock across the board without adding jitter and degrading edges. No one works on solving the problem of higher frequency oscillators, because no one would buy the solution.
    $endgroup$
    – Ben Voigt
    yesterday













    7












    $begingroup$

    Been there, done that.



    Apart from other reasons mentioned here is a different one:

    The marketing guys want to make the chip design as cheap as possible. Thus they prefer to use cheap crystals. The ones use for Ethernet fall in that category. So you often end up having to use a 25MHz crystal.



    At the same time marketing want powerful processors. Thus the processor (Let's call it a LEG++) should be able to run at 1 or 2 GHz.

    The only way to do that is to use a PLL.



    Or the processor can run at max 64MHz, but they want to have a USB interface which requires a 48MHz Clock. Again PLL to the rescue.



    ++LEG is not a registered trademark. (At least as far as I know)






    share|improve this answer









    $endgroup$












    • $begingroup$
      LEG have just released a quintuple Toe version of their famous FOOT processor.
      $endgroup$
      – Tom Carpenter
      yesterday






    • 1




      $begingroup$
      @TomCarpenter: I worked for a company in Cambridge which had a text with the title "ARM shows Intel the Finger" on the wall. It was a beautiful 1'st of April article where they specified a one bit processor called "The Finger". Never found a copy!
      $endgroup$
      – Oldfart
      yesterday















    7












    $begingroup$

    Been there, done that.



    Apart from other reasons mentioned here is a different one:

    The marketing guys want to make the chip design as cheap as possible. Thus they prefer to use cheap crystals. The ones use for Ethernet fall in that category. So you often end up having to use a 25MHz crystal.



    At the same time marketing want powerful processors. Thus the processor (Let's call it a LEG++) should be able to run at 1 or 2 GHz.

    The only way to do that is to use a PLL.



    Or the processor can run at max 64MHz, but they want to have a USB interface which requires a 48MHz Clock. Again PLL to the rescue.



    ++LEG is not a registered trademark. (At least as far as I know)






    share|improve this answer









    $endgroup$












    • $begingroup$
      LEG have just released a quintuple Toe version of their famous FOOT processor.
      $endgroup$
      – Tom Carpenter
      yesterday






    • 1




      $begingroup$
      @TomCarpenter: I worked for a company in Cambridge which had a text with the title "ARM shows Intel the Finger" on the wall. It was a beautiful 1'st of April article where they specified a one bit processor called "The Finger". Never found a copy!
      $endgroup$
      – Oldfart
      yesterday













    7












    7








    7





    $begingroup$

    Been there, done that.



    Apart from other reasons mentioned here is a different one:

    The marketing guys want to make the chip design as cheap as possible. Thus they prefer to use cheap crystals. The ones use for Ethernet fall in that category. So you often end up having to use a 25MHz crystal.



    At the same time marketing want powerful processors. Thus the processor (Let's call it a LEG++) should be able to run at 1 or 2 GHz.

    The only way to do that is to use a PLL.



    Or the processor can run at max 64MHz, but they want to have a USB interface which requires a 48MHz Clock. Again PLL to the rescue.



    ++LEG is not a registered trademark. (At least as far as I know)






    share|improve this answer









    $endgroup$



    Been there, done that.



    Apart from other reasons mentioned here is a different one:

    The marketing guys want to make the chip design as cheap as possible. Thus they prefer to use cheap crystals. The ones use for Ethernet fall in that category. So you often end up having to use a 25MHz crystal.



    At the same time marketing want powerful processors. Thus the processor (Let's call it a LEG++) should be able to run at 1 or 2 GHz.

    The only way to do that is to use a PLL.



    Or the processor can run at max 64MHz, but they want to have a USB interface which requires a 48MHz Clock. Again PLL to the rescue.



    ++LEG is not a registered trademark. (At least as far as I know)







    share|improve this answer












    share|improve this answer



    share|improve this answer










    answered 2 days ago









    OldfartOldfart

    8,7812927




    8,7812927











    • $begingroup$
      LEG have just released a quintuple Toe version of their famous FOOT processor.
      $endgroup$
      – Tom Carpenter
      yesterday






    • 1




      $begingroup$
      @TomCarpenter: I worked for a company in Cambridge which had a text with the title "ARM shows Intel the Finger" on the wall. It was a beautiful 1'st of April article where they specified a one bit processor called "The Finger". Never found a copy!
      $endgroup$
      – Oldfart
      yesterday
















    • $begingroup$
      LEG have just released a quintuple Toe version of their famous FOOT processor.
      $endgroup$
      – Tom Carpenter
      yesterday






    • 1




      $begingroup$
      @TomCarpenter: I worked for a company in Cambridge which had a text with the title "ARM shows Intel the Finger" on the wall. It was a beautiful 1'st of April article where they specified a one bit processor called "The Finger". Never found a copy!
      $endgroup$
      – Oldfart
      yesterday















    $begingroup$
    LEG have just released a quintuple Toe version of their famous FOOT processor.
    $endgroup$
    – Tom Carpenter
    yesterday




    $begingroup$
    LEG have just released a quintuple Toe version of their famous FOOT processor.
    $endgroup$
    – Tom Carpenter
    yesterday




    1




    1




    $begingroup$
    @TomCarpenter: I worked for a company in Cambridge which had a text with the title "ARM shows Intel the Finger" on the wall. It was a beautiful 1'st of April article where they specified a one bit processor called "The Finger". Never found a copy!
    $endgroup$
    – Oldfart
    yesterday




    $begingroup$
    @TomCarpenter: I worked for a company in Cambridge which had a text with the title "ARM shows Intel the Finger" on the wall. It was a beautiful 1'st of April article where they specified a one bit processor called "The Finger". Never found a copy!
    $endgroup$
    – Oldfart
    yesterday











    6












    $begingroup$

    PLLs can be used to multiply and divide frequencies. CPUs that have PLLs to generate their clocks are highly reconfigurable. The clock speed can be varied relative to the external reference clock over a wide range, and it's the PLL that makes this possible.






    share|improve this answer









    $endgroup$








    • 2




      $begingroup$
      Also it is not possible to get xtals to oscillate much beyond 100MHZ, so the ref oscillator needs to be multiplied many times to get 1 GHZ to 4 GHZ core frequencies. Core frequency is usually a integer multiple of the ref xtal.
      $endgroup$
      – Sparky256
      2 days ago










    • $begingroup$
      Well, it is more generally going to be an integer ratio of the reference frequency, as the PLL can divide both the VCO output as well as the reference frequency.
      $endgroup$
      – alex.forencich
      2 days ago















    6












    $begingroup$

    PLLs can be used to multiply and divide frequencies. CPUs that have PLLs to generate their clocks are highly reconfigurable. The clock speed can be varied relative to the external reference clock over a wide range, and it's the PLL that makes this possible.






    share|improve this answer









    $endgroup$








    • 2




      $begingroup$
      Also it is not possible to get xtals to oscillate much beyond 100MHZ, so the ref oscillator needs to be multiplied many times to get 1 GHZ to 4 GHZ core frequencies. Core frequency is usually a integer multiple of the ref xtal.
      $endgroup$
      – Sparky256
      2 days ago










    • $begingroup$
      Well, it is more generally going to be an integer ratio of the reference frequency, as the PLL can divide both the VCO output as well as the reference frequency.
      $endgroup$
      – alex.forencich
      2 days ago













    6












    6








    6





    $begingroup$

    PLLs can be used to multiply and divide frequencies. CPUs that have PLLs to generate their clocks are highly reconfigurable. The clock speed can be varied relative to the external reference clock over a wide range, and it's the PLL that makes this possible.






    share|improve this answer









    $endgroup$



    PLLs can be used to multiply and divide frequencies. CPUs that have PLLs to generate their clocks are highly reconfigurable. The clock speed can be varied relative to the external reference clock over a wide range, and it's the PLL that makes this possible.







    share|improve this answer












    share|improve this answer



    share|improve this answer










    answered 2 days ago









    Dave TweedDave Tweed

    123k9152265




    123k9152265







    • 2




      $begingroup$
      Also it is not possible to get xtals to oscillate much beyond 100MHZ, so the ref oscillator needs to be multiplied many times to get 1 GHZ to 4 GHZ core frequencies. Core frequency is usually a integer multiple of the ref xtal.
      $endgroup$
      – Sparky256
      2 days ago










    • $begingroup$
      Well, it is more generally going to be an integer ratio of the reference frequency, as the PLL can divide both the VCO output as well as the reference frequency.
      $endgroup$
      – alex.forencich
      2 days ago












    • 2




      $begingroup$
      Also it is not possible to get xtals to oscillate much beyond 100MHZ, so the ref oscillator needs to be multiplied many times to get 1 GHZ to 4 GHZ core frequencies. Core frequency is usually a integer multiple of the ref xtal.
      $endgroup$
      – Sparky256
      2 days ago










    • $begingroup$
      Well, it is more generally going to be an integer ratio of the reference frequency, as the PLL can divide both the VCO output as well as the reference frequency.
      $endgroup$
      – alex.forencich
      2 days ago







    2




    2




    $begingroup$
    Also it is not possible to get xtals to oscillate much beyond 100MHZ, so the ref oscillator needs to be multiplied many times to get 1 GHZ to 4 GHZ core frequencies. Core frequency is usually a integer multiple of the ref xtal.
    $endgroup$
    – Sparky256
    2 days ago




    $begingroup$
    Also it is not possible to get xtals to oscillate much beyond 100MHZ, so the ref oscillator needs to be multiplied many times to get 1 GHZ to 4 GHZ core frequencies. Core frequency is usually a integer multiple of the ref xtal.
    $endgroup$
    – Sparky256
    2 days ago












    $begingroup$
    Well, it is more generally going to be an integer ratio of the reference frequency, as the PLL can divide both the VCO output as well as the reference frequency.
    $endgroup$
    – alex.forencich
    2 days ago




    $begingroup$
    Well, it is more generally going to be an integer ratio of the reference frequency, as the PLL can divide both the VCO output as well as the reference frequency.
    $endgroup$
    – alex.forencich
    2 days ago











    5












    $begingroup$

    PLLs are used primarily to generate one or more faster or slower clocks from a reference clock.



    You might have say a fixed 100MHz crystal, but then want to run your CPU at 2GHz, so a PLL is required to increase the frequency (a 2GHz clock crystal isn't feasible).



    Additional you may want to be able to change your CPU frequency on the fly (e.g. a turbo clock). In which case you could have a reconfigurable PLL.



    Furthermore you may need a different memory or peripheral clock to your CPU clock. Again a PLL and divider can be used to generate this from a single reference.






    share|improve this answer









    $endgroup$












    • $begingroup$
      One may want to refer to Wikipedia page of Standard Crtstal Frequencies: en.wikipedia.org/wiki/Crystal_oscillator_frequencies
      $endgroup$
      – Swanand
      yesterday















    5












    $begingroup$

    PLLs are used primarily to generate one or more faster or slower clocks from a reference clock.



    You might have say a fixed 100MHz crystal, but then want to run your CPU at 2GHz, so a PLL is required to increase the frequency (a 2GHz clock crystal isn't feasible).



    Additional you may want to be able to change your CPU frequency on the fly (e.g. a turbo clock). In which case you could have a reconfigurable PLL.



    Furthermore you may need a different memory or peripheral clock to your CPU clock. Again a PLL and divider can be used to generate this from a single reference.






    share|improve this answer









    $endgroup$












    • $begingroup$
      One may want to refer to Wikipedia page of Standard Crtstal Frequencies: en.wikipedia.org/wiki/Crystal_oscillator_frequencies
      $endgroup$
      – Swanand
      yesterday













    5












    5








    5





    $begingroup$

    PLLs are used primarily to generate one or more faster or slower clocks from a reference clock.



    You might have say a fixed 100MHz crystal, but then want to run your CPU at 2GHz, so a PLL is required to increase the frequency (a 2GHz clock crystal isn't feasible).



    Additional you may want to be able to change your CPU frequency on the fly (e.g. a turbo clock). In which case you could have a reconfigurable PLL.



    Furthermore you may need a different memory or peripheral clock to your CPU clock. Again a PLL and divider can be used to generate this from a single reference.






    share|improve this answer









    $endgroup$



    PLLs are used primarily to generate one or more faster or slower clocks from a reference clock.



    You might have say a fixed 100MHz crystal, but then want to run your CPU at 2GHz, so a PLL is required to increase the frequency (a 2GHz clock crystal isn't feasible).



    Additional you may want to be able to change your CPU frequency on the fly (e.g. a turbo clock). In which case you could have a reconfigurable PLL.



    Furthermore you may need a different memory or peripheral clock to your CPU clock. Again a PLL and divider can be used to generate this from a single reference.







    share|improve this answer












    share|improve this answer



    share|improve this answer










    answered 2 days ago









    Tom CarpenterTom Carpenter

    40k375121




    40k375121











    • $begingroup$
      One may want to refer to Wikipedia page of Standard Crtstal Frequencies: en.wikipedia.org/wiki/Crystal_oscillator_frequencies
      $endgroup$
      – Swanand
      yesterday
















    • $begingroup$
      One may want to refer to Wikipedia page of Standard Crtstal Frequencies: en.wikipedia.org/wiki/Crystal_oscillator_frequencies
      $endgroup$
      – Swanand
      yesterday















    $begingroup$
    One may want to refer to Wikipedia page of Standard Crtstal Frequencies: en.wikipedia.org/wiki/Crystal_oscillator_frequencies
    $endgroup$
    – Swanand
    yesterday




    $begingroup$
    One may want to refer to Wikipedia page of Standard Crtstal Frequencies: en.wikipedia.org/wiki/Crystal_oscillator_frequencies
    $endgroup$
    – Swanand
    yesterday











    2












    $begingroup$

    3 main reasons;



    1) power savings for mobiles and extend CPU life keeping cool.

    2) signal integrity is improved using xx multiplier for front side bus due to short wavelength, lower capacitance

    3) flexible CPU speeds are possible with throttle on Clock multiplier and Vdd to allow burst CPU power and cool down.



    Signal routing of 100MHz FSB is easy, > 1GHz is hard and your CPU is much higher, driver current increases with f and standing wave reflections distort square waves. While reducing CPU clock saves power and reduces temp.






    share|improve this answer









    $endgroup$

















      2












      $begingroup$

      3 main reasons;



      1) power savings for mobiles and extend CPU life keeping cool.

      2) signal integrity is improved using xx multiplier for front side bus due to short wavelength, lower capacitance

      3) flexible CPU speeds are possible with throttle on Clock multiplier and Vdd to allow burst CPU power and cool down.



      Signal routing of 100MHz FSB is easy, > 1GHz is hard and your CPU is much higher, driver current increases with f and standing wave reflections distort square waves. While reducing CPU clock saves power and reduces temp.






      share|improve this answer









      $endgroup$















        2












        2








        2





        $begingroup$

        3 main reasons;



        1) power savings for mobiles and extend CPU life keeping cool.

        2) signal integrity is improved using xx multiplier for front side bus due to short wavelength, lower capacitance

        3) flexible CPU speeds are possible with throttle on Clock multiplier and Vdd to allow burst CPU power and cool down.



        Signal routing of 100MHz FSB is easy, > 1GHz is hard and your CPU is much higher, driver current increases with f and standing wave reflections distort square waves. While reducing CPU clock saves power and reduces temp.






        share|improve this answer









        $endgroup$



        3 main reasons;



        1) power savings for mobiles and extend CPU life keeping cool.

        2) signal integrity is improved using xx multiplier for front side bus due to short wavelength, lower capacitance

        3) flexible CPU speeds are possible with throttle on Clock multiplier and Vdd to allow burst CPU power and cool down.



        Signal routing of 100MHz FSB is easy, > 1GHz is hard and your CPU is much higher, driver current increases with f and standing wave reflections distort square waves. While reducing CPU clock saves power and reduces temp.







        share|improve this answer












        share|improve this answer



        share|improve this answer










        answered 2 days ago









        Sunnyskyguy EE75Sunnyskyguy EE75

        69.9k225101




        69.9k225101




















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









            draft saved

            draft discarded


















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












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











            Jonas Daverio 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.




            draft saved


            draft discarded














            StackExchange.ready(
            function ()
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2felectronics.stackexchange.com%2fquestions%2f429532%2fwhy-is-there-a-pll-in-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

            Sum ergo cogito? 1 nng

            三茅街道4182Guuntc Dn precexpngmageondP