重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

【GOLF me!】初月無料お試し

現在Quartus 8.1でFPGAを開発しているものです。

FPGAボード上の水晶発振器のクロック48MHzをメガファンクションの
ALTPLLで100KHz(0.1MHz)と30KHz(0.03MHz)を作って使用したいと考えているのですが、赤い英文字で
「cannot implement the requested PLL
Cause Post divider max count exceeded」
と出てしまいます。
(周波数下げすぎ?)

そのまま無視して進めていくと何となく100KHzの周波数のPLL出力クロックは出来ているのですが、このまま利用すると何かジッタ等の問題があるのでしょうか?

また、もしダメな場合、どのように48MHzから100KHzと30KHzのクロックを作ればよいのでしょうか?

A 回答 (3件)

ANo1さんの案に賛成です。



100KHzと30KHzをどういった使い方するのか分かりませんが、周波数を落とす場合はPLLがもったいないので普通はカウンタで作ります。

カウンタも、LE数を節約するためにまず80カウントして600khzを作成します。
この600khzを3カウント⇒1/2分周して100KHzを作成、
600khzを10カウント⇒1/2分周して30KHzを作成します。
(最後の1/2分周はデューティ50%にするために入れてます)

容量の小さいCPLDを使うわけではないので、ここまでカスタマイズする必要ないかもしれませんが・・・
    • good
    • 0

48MHzから100Khz,30Khzまで落とすことが出来ないでも、その2,4,8,16倍...の周波数出力は実現可能のはずです。


それを1/2,1/4,1/8,1/16倍にdowncountする方が容易に実現出来ると思われます。
    • good
    • 0

>「cannot implement the requested PLL Cause Post divider max count exceeded」


分周器の設定可能な範囲を超えているという警告です。
おそらく勝手な周波数で発振し、それにロックはずれの変な制御信号のせいでわけのわからない周波数になるでしょう。

100kHz = 48MHz÷480
30kHz = 48MHz÷1600
なので1/480、1/1600 のカウンターを作れば良いです。
デューティ50%のクロックが欲しい時は上記の半分のカウンタを作ってそれを1/2にすれば良いです。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!