Forum Discussion

Altera_Forum's avatar
Altera_Forum
Icon for Honored Contributor rankHonored Contributor
17 years ago

Dynamic counter values for PLL

Hello,

I'd like to know if there is a way to dynamically set the values for the M, N and P counters,for the Stratix II PLLs, by linking them to some registers.

I see know that I can just set those values with the megawizard manager.

I took a look to the vhd files and counter are set via NATURAL.

Does quartusII would support that I link those signal to some registers?

Thanks in advance

6 Replies

  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    Please take a look at the ALTPLL_RECONFIG MegaFunction. It basically provides what you need.

  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    You can dynamically reconfigure the PLLs, and there is an app note describing it. But note that M, N and P are just high-level representations of SRAM bits in the device, and the Quartus II software has to translate those values to what the SRAM bits. So there's nothing like that on-die, i.e. you won't be feeding the PLL these high-level parameters, you'll be feeding it configuration bits. The app note will explain it better.

  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    Ok... Thanks.

    I had a look at the megafunction user guide for the reconfiguration of the PLL and at the application note on how to implement the reconfigurable PLL on the Stratix II, but It is still not very clear to me.

    I can reprogram the N and M factors in real time by using the scan shift register.

    This one is loaded via a MIF configuration file, so I have to precompile all the different frequencies in advance to be able to load them during run time?

    So the only way I can reprogram the PLL is by using the quartus II software to load the new configuration?
  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    I believe you need Quartus to make the configurations, but you can store them in your design and have your design load/reconfigure on the fly without Quartus. As I said, there's a big difference between M, N, etc. and configuration bits, and Quartus does that whole conversion(as well as Design Rule Checks) for you. It makes the .mif files, which you then use to program it. So if you wanted a "limitless" number of configurations, you will probably have trouble, but a known, bounded number of configurations is doable.