• ベストアンサー

CPUのクロックはどのように生成するのでしょうか?

水晶で数十MHzの信号を出し、PLLで位相を整え、トランジスタでたたき上げる方式かな?と考えています。 Wikipediaにある、Core2, Conroeでは、266×n(n = 7-10)としてあるので、266MHzの中間周波数にたたき上げた後、逓倍にたたき上げるのかな?と勝手に想像しています。

質問者が選んだベストアンサー

  • ベストアンサー
  • Tacosan
  • ベストアンサー率23% (3656/15482)
回答No.2

Intel の CPU の場合, Pentium4 以降は「CPU に与えるクロックは FSB の 1/4」です (CPU 内部の PLL で逓倍しています). だから, 例えば FSB が 1066MHz の Core2 なら CPU に与えるクロックは (1066 / 4 =) 266MHz です. で, これをどうやって作るかというと, Intel の Core2 のデータシートでは「CK410B というクロックジェネレータを使えば仕様は全部満たせる」と書いています. で CK410B の仕様を見ると, クロック入力として水晶の 14.31818MHz をとり, これをもとに 100/133/166/200/266/333/400MHz (CPU), 100MHz (SRC = Serial Reference Clock), 33MHz (PCI/PCI free running), 48MHz (USB) の各クロック信号を生成しています (仕様からはうまく読めませんが, CK410B 内部でも PLL を使っている: この PLL が生成する周波数は不明). だから, Intel の仕様書をそのまま使うと ・水晶で 14.31818MHz を作る ・その信号を CK410B に入れて, CPU に与える (266MHz などの) クロックを作る ・そのクロックをもとに CPU が内部の PLL で指定されたクロックを生成する という手順になります. かなり手を抜いて書いていますので, 詳細はそれぞれの仕様書にあたってください.

whatsnew
質問者

お礼

・・・補足を書いてしまいました。 お礼は補足と一緒です。

whatsnew
質問者

補足

有難うございます。 感覚的に分かりました。 Intelの仕様書をざっくり読みましたが、同じようなことが書いてありました。詳しく読んでみたいと思います。

その他の回答 (3)

回答No.4

>ppmでみれば同一です。 基準周波数比で見ればどちらも同一です。 >無線のGHzの周波数の作り方が、質問で書いたやり方 確かに昔はバラクターダイオードや、トランジスターによる逓倍回路で目的周波数を作っていましたが、周波数が高くなると逓倍の段数が多くなり、電力を使って熱を発生しやすくなるので、今ではほとんどの場合一発発振か、ミキサーを合わせて目的周波数を作ります。 その昔々、その昔は、144MHzの周波数を作るのに12MHzの水晶から12逓倍(3*4または3*2*2の逓倍を使用する)していました。これと同じようにしてGHzの周波数を作ることにすると大変な段数が必要でかつ、その動作の安定度(周波数ではなく回路そのもの)にも十分な保証を得ることが難しく、大量生産向きでなくなります。

回答No.3

PLLの回路に逓倍は使いません。 必ず、目的の発振周波数から分周して位相比較します。 普通の増幅器に正帰還をかけて発信器を作ります。 その時、コンデンサーに可変容量ダイオードを使用し、電圧で容量を可変できるようにします。 水晶発振の信号は位相比較の基準信号として使用し、全体の安定度を高める為に使用しているだけです。 水晶の 14.31818MHzはテレビのカラー調整用サブ信号の3.579545MHzの4倍にあたり、一般的に入手しやすい為、使用する周波数です。 フリーの安定度を無視した発振器なら、ギガヘルツ帯でも十分に作成でき、コイルは基板上に線を作るだけでもインダクターになります。 No.1では「数十MHzの信号」と誤って書いてしまいましたが「数GHzの信号」でも今ではこの手法を使う事ができます。 逓倍を用いると必ず安定度の絶対値が低下するのでせっかくPLLを使っているのにそのような事はしません。 たとえば、10MHzあたり10Hzの安定度は1GHzでは1KHzになってしまい、元の基準信号と同程度の安定度は保てなくなります。 ちなみに私は趣味で無線機の調整機をPLL回路で作ったことがあり、この時も「分周すれど逓倍せず」でした。 ...........No.1の補足です。

whatsnew
質問者

お礼

有難うございます。 基準となる精度の高い周波数源は水晶で、発信源は別に作るということでしょうね。 >たとえば、10MHzあたり10Hzの安定度は1GHzでは1KHzになってしまい、元の基準信号と同程度の安定度は保てなくなります。 とありましたが、ppmでみれば同じ1ppmですよね。周波数のゆらぎの絶対値は大きくなりますが、ppmでみれば同一です。 無線であれば、送信部ではクロストークの影響を考えたり、受信部のIMに落とすときに受信フィルタ帯域内に落とさなくてはいけないので、安定度は重要ですよね。 私が知っている無線のGHzの周波数の作り方が、質問で書いたやり方だったもので、同じかなあ??と思っていました。

回答No.1

Wikipediaのどこに書いてあるのか判りませんが、数十MHzの信号を必要とする場合、直接LC発振し、その分周した周波数で位相比較しそれをLC発振にフィードバックする方法が多いと思います。この方法がいわゆるPLL発振回路の原理です。 特に水晶振動子の価格は30MHzを超えると極端に上昇します。 昔は、通信機などでも水晶発振を逓倍して使用していましたが、逓倍後の安定度の絶対値は逓倍前の値に逓倍数を掛け算した値になり、十分な安定度が得られない事からこの様な手法が用いられるようになりました。 実際の回路図を見た事はありませんが、CPUはCR発振回路でも十分に動作する(実際にZ80を2MHzで動作させた事があります)ので、クロックの正確性を必要としない部分はどのような方法でもいいことになります。 クロックの正確性を必要とする通信周りや、時計周りなどは十分に安定度のある発振回路(水晶発振)を用いる必要があります。

関連するQ&A

  • PLL(Phase locked loop)についてぜひ教えてください。

    以前に「n逓倍器」について多くのアドバイスをいただき、ありがとうございました。 結局、水晶振動子で安定した周波数出力をし、PLLを使ってn倍の逓倍器を作ろうと決めました。 ICはMC14060を使おうと思っています。 このICは14ビットのバイナリカウンタで、発振器も内蔵しており、水晶振動子を接続することで、14ビットの範囲で任意に分周させて出力が出来るようです。(この時点で間違っていたらすいません。。) それで、100Hz程度の正弦波をPLLに入力させようとしているので、一般的な水晶振動子では周波数が高すぎる(数MHzを多く見かけました)ため、分周して出力させようと考えました。 水晶振動子を調べると0.032768MHzという水晶振動子を見つけたのですが、それを14ビットで分周すると・・・ 0.032768(MHz)×(1/2の14乗)=2Hzとなるので十分だと考えました。 そこで質問があるのですが、水晶振動子の出力を分周させて低めの周波数(数Hz~数KHzぐらい)で出力させようとするときは、高めの周波数(数MHz~数十MHz)の水晶振動子を値の大きなビットで分周させてつくったほうが良いのでしょうか?それとも、あらかじめ低い周波数(私が見つけた水晶振動子程度)の水晶振動子を値の小さなビットで分周させて出力させたほうが良いのでしょうか?? 「良いのでしょうか?」というのは波形が安定しているかどうか(歪みなどが無いか)という視点のみです。 また分周についてお知りの方は、14ビットでは欲しい周波数まで分周できないときは、直列に分周器をつなげる(例えば14ビット分周器を2個)ことでビット数を増やし、高い周波数の水晶振動子でも数Hzの周波数で出力させることが可能でしょうか?? 回路の初心者なのでどんなことでもアドバイスをいただければとても助かります。よろしくお願い致します。

  • レファレンスクロックとPLL動作

    お世話になっております。 PLLには常にレファレンスクロック(A MHz)が必要ですが、 一旦安定動作(n逓倍動作)した後、 レファレンスクロック周波数が大きく変動し(B MHz)、 再度当初の周波数に戻った場合(x MHz)、 出力クロックが正常動作していない、n*Aになっていない、 等の動作状態に陥り続けることは無いのでしょうか。 また正常動作を保証する周波数範囲(A to B)は、 PLL ICデータシートのどの項目に規定されているものでしょうか。 宜しくお願いいたします。

  • PLLでのクロック分周について

    現在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のクロックを作ればよいのでしょうか?

  • マイコンのクロックを測定する回路について

    マイコンのクロックを16MHzの水晶振動子で与えています。 この周波数を測定する回路を作るのですが、水晶の両端から信号を取り出そうとすると、普通のバッファではクロックに影響を与えてしまい、マイコンが誤動作することがあると聞きました。 マイコンに影響を与えないで、クロック周波数を見るのにはどんなインタフェースでクロック端子に当たればいいのでしょうか?

  • PLL逓倍数とジッタ

    いつもお世話になっております。 PLL逓倍数とジッタの関連性について聞かせてください。 レファレンスクロックとPLL出力周波数との差が大きい程、 つまりPLL逓倍数が大きければ大きいほどジッタ(RJ)が大きくなる傾向があると思われます。 定量的な解析はとりあえず置いておいて、 ジッタが悪化する定性的なイメージをお聞きしたいと思います。 レファレンスクロックが低いとPFD(位相周波数比較器)のup/down頻度が低くなる。 頻度が低くなるとLPFに対する電荷チャージ(およびディスチャージ)の頻度が少なくなり、 Vctrlはリークによる影響を受け揺らぎを持ちやすくなり、VCO出力としてジッタを含みやすくなる。 または、 逓倍数が高い場合、常にKvcoが高くなければならず、Vctrl上のノイズおよびワンダーに対し敏感にならざるを得ず、結果出力ジッタが大きくなる。 正しくない場合訂正していただければと思います。 また他に定性的な説明があれば、 是非教えてください。 宜しくお願いいたします。

  • PLLを用いたヘテロダイン検波について

    現在、搬送波2MHzを用いて信号の検波をしようと取り組んでいます。 そこで、ヘテロダイン検波(1.98MHz)を用いて中心周波数20kHzで信号を取り出すためにプログラマブル水晶発振器(SG8002)の使用を検討しています。 しかし、SG8002は同調部には向かないという意見を見つけたので使用に関して迷っています。 今回の使用方法はSG8002で発振した矩形波をLCフィルタで正弦波にして搬送波に乗算するという形です。 SG8002はPLL回路方式の中でも特にジッターなどの雑音が多くなってしまうのでしょうか? ネット等で調べてみたのですが、具体的にSG8002の何が原因で検波回路に向いていないのかが分からなかったです。 よろしくお願いします。

  • CPUの性能

    昨日本でCPUを色々見てたんですが 疑問が浮かびました。 Intel Core 2 Extreme QX9650 動作周波数3GHz,システムバス1333MHz AMD Phenom 9600 動作周波数2.3GHz システムバス3600MHz これって何かおかしくないですか? システムバスというのが動作周波数上回ってますけど、間違ってないのでしょうか? それと総合的な性能はどっちがいいのかと システムバスとはいったい何なのかわかりやすく(Wikipediaも見ましたがよくわかりません)教えてくれると幸いです。

  • 6石スーパーラジオの中間周波数を455KHzにした理由は?

    6石スーパー(ヘテロダイン)ラジオは今更ながら完成された究極の回路方式だと思います。(受信しようとする信号電波を、ヘテロダイン検波によって中間周波に変換して安定に増幅する回路) 市販のメーカー製ポケットAMトランジスターラジオはほぼ100%この方式です。 そこで質問ですが、中間周波数を455KHz(とは限りませんが)に決めた理由は何故でしょう? また、プロポ等ラジオコントロールの受信機(レシーバー)やトランシーバー(スーパー式)にも、この中間周波の部品(中間周波トランス=IFT)らしきものが見られます。これらの周波数はいくらなのでしょうか? 以上宜しくお願いします。

  • 12MHzのバッファ

    12MHzの周波数測定が可能な良いバッファICは無いでしょうか? 水晶の生信号を周波数測定したいのですが、プローブを使っても信号が減衰してしまい困っています。周波数的に74HCでは厳しですよね・・・

  • 逆位相の電波について

    水晶発振器から1MHz程度の周波数を発振させて、逆位相の電波をつくりたいのですが、どうしたらよいのでしょうか? 今は水晶発振器の後にインバータ(74HCU04)を一回だけ通しています。 インバーター発振回路ではIN、OUTの発振波形は逆相です。 という記事をみたからですが・・・ これで逆位相の電波はでているのでしょうか? また1MHz程度では4069UBのほうが良いのでしょうか? よろしくお願いします。