• ベストアンサー

CPU クロック数があがると何故消費電力があがるの?

CPUの消費電力はクロック数と比例すると聞いたことがあります。 なぜ、クロック数に比例して消費電力があがるのでしょうか? 単純に考えると、消費電力はトランジスタがオンのときに電力を消費しているのが原因な気がします。 よって、このトランジスタをオン-オフしたからといって、これにより消費電力が増えると考えるのはつじつまがあわない気がします。 回答よろしくお願いします。

  • jyuzou
  • お礼率77% (238/307)

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

  • ベストアンサー
  • noranuko
  • ベストアンサー率46% (620/1332)
回答No.8

どうしてリーク電流による消費電力と、CPUの動作による消費電力をごっちゃにしてるんだ。 http://pcweb.mycom.co.jp/news/2003/04/04/21.html によれば、CPUの消費電力Pは P=NaCV^2f+NtIlV P:消費電力 Na:動作ノード数 Nt:全ノード数 C:ノード容量 V:電源電圧 f:周波数 Il:ノード当たりのリーク電流 ということになる。 んで、見ればわかるけど後半のリーク電流の部分はクロックと関係ない。 (もちろん高い周波数を実現しようとすれば、電圧の閾値を下げる必要がありリークは増えますが、 これは質問とは関係なく、設計上の問題) んで、問題なのは前半部分。 http://pcweb.mycom.co.jp/column/architecture/001/ ここに詳しく乗ってるけど、 最初のNaは動作しているノードの数なので消費電力がその倍数になるのは当然。 Cのノード容量はそのノードごとについている負荷容量。要はコンデンサ。 実際には配線容量や次段の論理回路の入力容量など。 出力をHighにするにはこれを充電してやる必要がある。 で、これが1回あたりC*V^2のエネルギーが必要。 それでノードが出力を行うのは1クロックごと。 つまり、 動作しているノードの数×1回の充放電に必要なエネルギー×動作回数 =NaCV^2f というのが、CPUの動作に関わる部分の消費電力ということになる。 結局CPUのノードがhighの値を出力するには、配線容量や次段の論理回路の入力容量なんかを充電してやる必要があり、 そのノードが出力を行うのはクロックごとに出力が行われるので、 消費電力はクロックに比例する。

jyuzou
質問者

お礼

回答どうもありがとうございました。 リンク先の解説大変参考になりました。

その他の回答 (7)

回答No.7

No1です。 http://itpro.nikkeibp.co.jp/free/ITPro/OPINION/20040715/147310/ >リーク電流による消費電力の増加は,90nm世代のCPUで深刻化した問題だ。この間隔が短いほど,電流が流れやすくなりリーク電流が発生しやすい。 >しかもトランジスタのスイッチング速度,つまり動作周波数を上げるには,そもそもトランジスタに電流が流れやすいように半導体を設計しなくてはらない。 この辺りを読んでいただければなんとなく分かると思うのですが、そんなに微々たる物では無いと思います。 シリコンの中の配線間の静電容量がどの程度なのかしりませんが、配線間の距離が短くなればなるほどCは大きくなります。手配線した時に10ピコ、20ピコは当たり前なので90nm間隔の配線でも結構なロスがでてると思います。 前にどこかの記事で最近のCPUの消費電力の80%?はリーク電流だという記事を見ました。(80%はかなり曖昧な記憶です。) なので、リークがあって誤動作するのではなく、リークがあっても誤動作しないように設計しているんじゃないでしょうか? 参考URLより消費電力115Wとします。仮に1.8Vだとして、流れる電流は約64Aです。 他の方が6000万のトランジスタが入っていると言っているので、それで割ると一つ辺りのトランジスタに流れる電流は1μA程度と言う事になります。 その8割がリークだとして、0.8μA、これが2GHzのCPUだとしたら一つあたり0.00003pFの静電容量と言う事になると思うのですが、(計算間違ってたらすいません)これならなかなか現実的な数字だと思うのですが、どうでしょう? 他にもロスもありますので一つ辺りのCはもっと減ると思いますので、消費電力の増加=ほぼリークと言って良いのではないかと思うのですが。

jyuzou
質問者

お礼

度重なる回答どうもありがとうございした。

  • doahodesu
  • ベストアンサー率57% (233/402)
回答No.6

#3です。 >CPUの消費電力はクロック数と比例する というのは、いわゆるオーバークロックの話だったんですね。 私は別個のCPU(2Gと3Gのように)のことだと誤解していたので、前述の回答をいたしました。 その訂正回答は既に#5の方が書いてくださっていますので、多少の補足だけに止めておきます。 オーバークロックで外部から高いクロックを与えたとしても、1パルスの波形の、等脚台形の両脚の傾きは変化しません。 台形波形の上底と下底が短くなるだけです。 つまりデジタル回路での電力消費の最大要因である、コンプリメンタリのスイッチング切替時(台形の等脚部)の数が単純に増えることが、原因だと思います。

jyuzou
質問者

お礼

度重なる回答どうもありがとうございます。 回答参考にさせていただきます。

  • k-roh
  • ベストアンサー率36% (14/38)
回答No.5

質問者はトランジスター関係の知識をお持ちのようなので、それを前提でお話します。 CPUの内部回路は ON←→OFF で動くのではなく +電位へON←→-電位へON で動いていると考えてください。 入力端子が1つ出力端子が1つでトランジスタ2個の回路を組んで、 上記動作をさせると 出力が変化する瞬間にトランジスタが2個とも(完全でないにしろ)ONになってしまうのです。 その時、+電位(+電源)から-電位(-電源)へ漏れ電流が発生します。 これが消費電力が増える原因です。 低クロックCPUの場合、電流が漏れる回数が少ないので、「本当にトランジスターを動かす電力」に比べて「漏れ電流」が少ない。 高クロックCPUの場合、電流が漏れる回数が多いので、「本当にトランジスターを動かす電力」に比べて「漏れ電流」が多い、 つまり傍から見るとみょ~に電力を消費している、という事です。

jyuzou
質問者

お礼

回答どうもありがとうございます。 回答参考になりました。

  • tojyo
  • ベストアンサー率10% (117/1066)
回答No.4

確かに理論上はトランジスタがオフの状態では電流は流れないことになっていますが、現在のCPUではリーク電流の問題が無視できません。CPU内部には6000万個ほどのトランジスタが作りこまれているわけですから一つ一つのリーク電流はたいしたことなくても、全体としてはかなりのリーク電流が発生しています。

jyuzou
質問者

お礼

回答ありがとうございます。 これは大規模化によるリーク電流増大に関することですよね。

  • doahodesu
  • ベストアンサー率57% (233/402)
回答No.3

デジタル回路では電圧の高い状態を“1”、低い状態を“0”として動作させますが、立ち上がり(0から1への変化)、立ち下がり(1から0)の特性が命であることは、理解されていると思います。 低速のスイッチングの場合、電圧が高く電流が小さくても動きますが、CPUのような高速回路の場合は、電源電圧が高いとスレッショルド(閾値)までの時間がかかるわけで、当然電源電圧を低くして“1”の電圧も低くする必要が出てきますね。 さらに高速応答性を高めようとすると、小さい電流での駆動よりも高い電流の方が有利です。 何かいい例えはないかと考えてもなかなか思いつきませんが、敢えて次のように説明してみます(原理は違うので誤解されないよう)。 白熱電球を光らせる時、最高光度の状態を“1”、暗い状態を“0”とします。 このとき電圧の高く電流の大きい電球を点灯させると、スイッチを押してすぐに点きます。 消費電流を節約するために、この電球に低い電圧をかけると電流も下がりますが、最高光度まではゆっくり変化します。(パッと点くのではなくポワッと点く?) これではだめなので、低い電圧で光る電球を使い高い電流で光らせると、パッと点くようになります。 高クロックにすると消費電力が増えるのではなく、大きい電流で駆動して高クロックでも動くようにしている、ということだと思います。

jyuzou
質問者

お礼

回答ありがとうございます。 高クロックにするためにはトランジスタの応答をあげるためにVgd(Vce)の電圧を十分にとる必要があることは理解できます。 しかし、Vgdは一定以上は必要ないと思いますし、また、ゲート入力インピーダンスは十分高いと思います。 回答者さんの回答では回路規模増大で消費電力or電源電圧があがるという説明にはなっているかもしれませんが、クロックに依存して消費電力があがるという説明にはなっていないと思います。 回答者さんの意図が汲めず、とんちんかんな反論になってたらすみません。

jyuzou
質問者

補足

お礼の内容で「Vce」と書いてしまいましたが、「Vbe」の間違いです。

  • ballville
  • ベストアンサー率47% (233/487)
回答No.2

デジタル回路の中でトランジスタはスイッチとして働きます。 このスイッチは、電灯線スイッチと本質は同じですが目的が違います。 電灯線スイッチはオンのとききちんと電流を通し、オフではちゃんと絶縁することが目的ですが、デジタル回路のスイッチの目的は、オンとオフ2つの状態を区別することにあります。 逆に言えば、オンのときに流れる電流は、それがオンだと分かるなら、少ない方が省電力になり、好ましいのです。 一方、スイッチを切り替えるためには、外から何らかのエネルギーを与えてやらなければなりません。電灯線スイッチなら、人の手がそのエネルギー源です。 デジタル回路中のトランジスタはいわば電動スイッチですので、エネルギー源は電気ということになります。 コンピュータでは、なるべく速くデジタルデータを処理したいわけですから、この電動スイッチをできるだけ速く切り替えることが求められます。そうなれば、処理スピードに応じて消費電力も上がっていきます。

jyuzou
質問者

お礼

回答ありがとうございます。 >電動スイッチをできるだけ速く切り替えることが求められます。そうなれば、処理スピードに応じて消費電力も上がっていきます と書かれていますが、結局なぜ「処理スピードに応じて消費電力が上が」るかという点には回答いただていないように思います。 私の国語力が足りず、回答者さんの意図を汲めなかったのだとすれば、申し訳ありません。

回答No.1

コンデンサの影響が一番大きいと思います。 コンデンサは周波数が高くなるほど電流を流してしまいます。配線同士等の意図しないコンデンサが電流を流してしまい、結果消費電力が上がってしますということです。 これはクロックがあがることによりよりできやすくなります。 仮にトランジスタを100HzでON,OFFした時、コンデンサの影響はほとんどありません。 しかし、100MHzでON,OFFしたときにはベース、エミッタ間の浮遊容量がとても大きいものに見えてくるでしょう。

jyuzou
質問者

お礼

回答ありがとうございます。 ご指摘のようにコンデンサがあれば、高周波でインピーダンスが低くなると思います。 しかし、外付けコンデンサならいざしらず、シリコン内のコンデンサ容量は微々たるものだと思います。 よって、CPUの消費電力の主たる部分がコンデンサと考えるのは無理があるような気がします。 私の認識違いならすみません。

jyuzou
質問者

補足

すみません。 回答内容を適当に読んでお礼を書いてしまいました・・・ おっしゃるとおり、ベース・エミッタ間の浮遊容量の問題で高周波においてはトランジスタがオンになりっぱなしになり、電源-GNDショート状態になる。そして、消費電力増加というのは考えられる要因だと思います。 また、配線間のコンデンサ成分で電流を流してしまうとのことですが、そういうことはあるのでしょうか? 消費電力云々より電流が流れるほどリークがあれば、その前に誤動作する気がしますがどうでしょう?

関連するQ&A

  • CPUのクロックと状態による消費電力

    Athlon64X2 3800+を使っております。 定格クロックは2Ghzですが。 常時1Ghzに固定して使っております。 クロックが違うと同じ作業でもCPU使用率が変わってくると思います。 2GhzでCPU使用率が低いのと1GhzでCPU使用率が高いのではどちらが消費電力が大きいのですか? クロックだけでなくCPUの状態(アイドル、halt?)によって変わると思うのですが。 また、1Ghzで動作している時はどのくらいの消費電力なんですか? また、私みたいにデュアルコアでCPUパワーが余っているのでクロックを下げて固定している人っていますか? 自動的に付加が少ない時はクロックが下がりますが。

  • マルチコアCPUのクロック周波数や消費電力について

    現在はシングルコアのCPUは少なくなりました。シングルコアの場合ですと、表示されていたクロック周波数=そのCPU全体のクロック周波数と見てよかったと思うんですが、マルチコアにおけるクロック周波数の表示はどうなんでしょうか? 例えば、Core i7-3960Xは6コアCPUで、3.3Gh'z駆動ですが、6コア合わせて3.3Gh'z駆動なのか、それとも6コア全てが3.3Gh'z駆動であるのかがわかりません。このCPUにはTurbo Boost機能がありますが、今はないものであるとして考えます。 仮に、6コア全てが3.3Gh'z駆動であるとすれば、単純に、3.3Gh'z駆動のCPUが6つある物、もしくは3.3Gh'z x 6 = 19.8Gh'z?と考えていいのでしょうか? また、消費電力の話になりますが、なぜシングルコアCPUよりマルチコアCPUの方が消費電力が下がるのでしょうか? Pentium 4の頃は爆熱等といわれていましたが、Core DuoやCore 2になってからはそういったことは聞きません。イメージとしてはシングルコアよりマルチコアの方が電力が食いそうなのですが・・・。 初心者なもので、あまり理解をしていません。解説してくださる方、もしくはわかりやすいサイト等がありましたら、是非お願いします。

  • CPUの消費電力について

    CPUの消費電力について Q9650を使っています、C1Eをオフにして使っているのですが、Vcoreが1.25Vで一定です。アイドル時も負荷時も消費電力は同じと考えていいのでしょうか?C1Eオンだとアイドル1.09V程度高負荷時1.25VでM/B付属の消費電力測定アプリでも電力計測できるので目に見えて消費電力が変わるのですが、C1Eオフだと使えないためわからないのでここで質問しました。詳しい方いたら教えていただきたいです。

  • CPUの消費電力について

    現在、atom CPUを使ってパソコンを使用しております。 古くなったので、パソコンを新調しようと思っております。 なるべく省電力なCPUを検討しておりますが、atomよりは高性能にしたいと思っており、 Pentiumを検討しておりますが、消費電力が気になります。 よくCPUのスペックにTDP65Wと記載がありますが、この値が同じであれば、動作クロックが違っても消費電力が異なるのでしょうか。 たとえば、 Pentium E5400 2.7GHz Pentium E5700 3.00GHz はクロックが若干ことなりますが、TDPは65Wです。金額差はそれほどではありません。 また、 Pentium E6500 2.93GHz Pentium E6700 3.20GHz はクロックが若干ことなりますが、TDPは65Wです。金額差はそれほどではありません。 E5000番台とE6000番台はおそらく、アーキテクチャが違うと思われますが、消費電力等はどうでしょうか。 もし、E6000番台のほうが消費電力が少なくなっているようでしたら、そちらにしたいと思っております。 ご教授いただけると幸いです。

  • CPUのクロック数を下げる

    現在じさくPCでサーバを構築しています。24時間稼動させるため、極力消費電力を抑えたいと考えています。 【環境】 マザーボード:XC Cube EX945-GC S1のベアボーンを使用 メモリ:1G CPU:intel Pentium Dual-Core 【質問】 BIOSでクロック数を下げて、PCの消費電力を下げる方法を教えてください。 また、その他に消費電力を抑える方法がございましたら、アドバイスをお願いします。

  • CPUのクロック数があがりません。

    CPUのクロック数があがりません。 phenom 2 945(95w)をCPU-Zでみたところずっとmultiplerが4.0のままで、800MHz位のままです。 ネットで他の方の値を見てみると、全員2000MHzは超えています。 なにが問題なのでしょうか? 具具ってもわかりませんでしたので詳しいかたいましたらご教授お願いします。 また、FF14のベンチマークを行っても、BIOSで省電力機能をOFFにしても、PCゲームを起動してもかわりませんでした。。

  • CPUのクロック数があがりません。

    CPUのクロック数があがりません。 phenom 2 945(95w)をCPU-Zでみたところずっとmultiplerが4.0のままで、800MHz位のままです。 ネットで他の方の値を見てみると、全員2000MHzは超えています。 なにが問題なのでしょうか? 具具ってもわかりませんでしたので詳しいかたいましたらご教授お願いします。 また、FF14のベンチマークを行っても、BIOSで省電力機能をOFFにしても、PCゲームを起動してもかわりませんでした。。 http://okwave.jp/qa/q6378600.html こちらでも伺ったのですが、全て違ったようです。

  • 自動的に動作クロックを下げる省電力CPUは?

    低クロックのCPUなら消費電力が少ない、しかしいざと言う時にはレスポンスが悪くなる…そこで最近耳にした『高クロックだが、使用率が低い時には自動的にクロックを落とすCPU』に注目してみようかと考えていますが、それはどんなCPUなのでしょうか?ペンティアム?アスロン?何かそういった機能一覧などが載っているサイトなんかがあれば助かります。 ちなみに『ペンティアム4 3.40eGHz 478ソケット 800MHz 1MB』は自動的に動作クロックを下げてくれるのでしょうか?

  • 低消費電力でハイスペックなCPUって

    現在、サーバーを構築するにあたって低消費電力である程度高速なCPUを探しています。 基本的にスペックと消費電力は比例的な関係だと思いますが、 その中でサーバー用途での使用である程度の速度が稼げる消費電力の低いおすすめのCPUを教えて下さい。

  • CPUのコア数とクロック数

    CPUのコア数とクロック数 最新のCPUの性能を見比べてみると、コア数が増えたけどクロック数は下がってる、というのがあります。これってCPUの性能としてはどうなんでしょうか? やっぱりコア数が増えてるのだから上がってるのでしょうか? クロック数が下がってるのはなぜなのでしょうか? ソフトをインストールするときなど、対応可能なCPU性能を参照するときなどはクロック数を参考にするとおもうのですが、明確な基準がいまいちわかりません。 基本的に素人ですので、わかりやすくお教えください。よろしくお願いします。