プロが教える店舗&オフィスのセキュリティ対策術

私は、あまりハードには詳しくないんですけど、パソコン歴は結構長い者です。最近、CPUについて疑問に思うことがありますので教えてください。私が使い始めたころは8ビット機が主流でしたが、3年程で、98と呼ばれる16ビット機に移行し、また4~5年で32ビット機に移行ました。約10年程前のことだったと思います。32ビットの初期は確か80286だったと思いますが、それが386になり、486になり、さらにペンティアムになっていったと思います。しかし、その後、64ビットに移行するかとおもったら、クロックの周波数をどんどんあげていくことで、この10年間は、32ビット発展型だったとおもわれます。なぜ、64ビットにあげないのでしょう。また、クロックの周波数はすでに2Gを超えていますけど、今後も3G、4Gとあげて、64ビットのパソコンはでてこないのでしょうか。

A 回答 (7件)

まず、


「32ビットの初期は確か80286だったと思いますが」ですが、
これは、16bitです。32ビットはi386からねですね。
第三世代x86ベースから32bit化が成されています。当時は、ALU(整数演算器)のみのCISC型演算子でした。FPU処理には、数値演算プロセッサ(数値データプロセッサ、オーバードライブプロセッサ)が必要でした。
第4世代ではこれが格段に進歩します。まず、486SXで8KBキャッシュメモリを統合。i486のDX世代でパイプライン化とx87浮動小数点演算子(FPU)の統合を果たす。

Pentiumの第5世代(P5)でスーパースカラー型処理を採用しIPC処理速度の強化を、さらにマルチメディア命令セットMMXを搭載し、スレッド当たりの処理命令数を2個同時実行(整数のみ)できるようにする。

PentiumPro~Pentium3の第6世代(P6)でスーパーパイプライン化を果たす。本格的な内的RISC環境となる。
同Pentium3で、128bit-SIMD処理の統合を果たすSSEの搭載。内的RISC度が格段に向上。

そして、Pentium4では128bit-SIMDを利用し64bit-SIMD処理を倍精度で2つ実行できるSSE2の統合と、約20段階に及ぶハイパーパイプライン化を果たしています。

さらに昨年末には、同時に複数のスレッドを処理できるHyperThreadingTechnologyを搭載したHTTPentium4が登場という具合ですね。

Q/なぜ、64ビットにあげないのでしょう。

A/意味がないからですね。現状では、単純にみてそれだけの価値がないというのが本当のところです。

例えば、メモリの問題が書かれていますが、メモリアドレッシングだけの領域を40ビットにでもあげれば、CPUは32bitでも事足ります。現に、Xeonプロセッサではメモリアドレスは36bit以上と広範化されており、32bitプロセッサなのに8GBバイト超のメモリも使える設計。
次世代のPentium4でも将来的に64bit化をしなければ、この方向で進む予定。


では、肝心な点として64bitは速度が格段に上がるのかですね?

既にIntelプロセッサの歴史で書きました。SIMDでは既に128bitの処理ユニットを装備しているのが現在のプロセッサです。SIMDとは、Single Instruction/Multiple Dataの略で複数の結果を一つの命令から導き出すこと。SIMDは特定の限られたよく使う命令をいくつか揃え、それに関して高速に結果を出すことを目的としている処理ユニットですから、SIMDなどの命令ユニットでよく使う命令が128bitでも処理できる現状ではプロセッサその物を64bitにして、倍速度が得られるわけではないのが現状。

では、64bitとは何が64bitかということです。IntelPentium4は32bitですが、128bitの部分もある。変ですよね。64bitになるというのは、演算の基礎となる部分、WindowsPCで言えば、x86という8086以来継承されてきたプロセッサの基礎構造そのものの部分、もっといればALUが64bitになることを指します。
これをやれば少しでも速くなるから良いのではと思うかな?

これをやってもその64bitの本当の効果を出すには、64bit記述のOSが必要。なければ、32bitで動作するため投資に見合う効果は少ない。また、開発費が高い。敷居が高いのですよ。だから今まではなかった。厳密には、これからも一般向けに限れば本当に必要かどうかは分からないというのがメーカーの本音です。口では売らないといけませんから必要といいますけどね。

ついでに言えば、CPUプラットフォームに変更があると、OSも既存のものが使えなくなる場合がある。インテルのIA-64(インテルアーキテクチャ64bitの略)がそれ、HP社と共同開発したIA-64のMerced(開発名)は現アイテニアムという名称で、ソフトウェア(VLIW)による補助がないと、既存Windowsは動作しない。互換を保ったまま拡張すれば別ですが・・・(AMDのx86-64がそれです)これにも、やはり生かすという点では問題もある。

最後に決定的なことを言うと、16bit時代には一部の処理に、命令が制限され思うようにデータ処理が実行できなかったが、32bitの命令になってから、このプログラムを作る上で、不足がほとんどなくなったことがある。
足りない点はSIMDが補ってくれますからね。

後は戦略や消費者の問題もあるかな?(この比率も比較的高い、まあこれは全体を読めば分かるかも)

Q/今後も3G、4Gとあげて、64ビットのパソコンはでてこないのでしょうか

A/まあ、既に回答があるように今年の前半にはSledge Hammerの名称で開発されてきたOpteronがサーバ向けにAMDから登場します。これは、x86-64で開発された64bitプロセッサです。
さらに、AMDからは一般向けの開発名ClawHammerと呼ばれるAthlon64が登場する。これも、64bit。既存のAthlonXPプラットフォーム(x86-K7)に互換。

前のような理由がありながら、AMDがここに来て、難しい64bit化を急いだのはインテルとの競争のため、差別化をしてアドバンテージを見せるのが目的。既に周波数が高ければ、人々は高い周波数を選ぶ、ならビット数が高いと・・・もし、これで商業的に成功しインテルからシェアを大きく奪えばインテルも64bit化せざる終えなくなりますけどね。

話を戻して
サーバー向けでは、Intelのアイテニアム(IA-64)、Alpha(HP)、UltraSPARC(Sunマイクロシステムズ)、Power4(IBM)など・・・他にPowerPC970(来年出荷)/PowerPC620/630(失作)がある。


ちなみに、CPUで最初は、Dec社(コンパックを経て、HPに買収だったはず)が93年にAlphaプロセッサを開発したのが最初。このAlphaで使われたEV6、EV7のバス・技術ライセンスはインテル、AMDのプロセッサ技術にも使われる。

ちなみに、インテルが一般向けで64bit化のライバルとして開発しているのは、リーク電流と、Threading処理の強化ですね。

リーク電流とは、10年間のパソコンのプロセッサには冷却ファンは付いてましたか?特にデスクトップ型では付いてなかったはずです。消費電力は200wの1/9程度の製品も多かった・・・(うちの93年もの98は消費電力は本体のみ30wです。286Uは20Wだったかな?)今のパソコンはCPUだけで40~80Wの消費が可能。これは、リーク電流(無駄に消費される電気)が極端に増えたため、これを解決しないと64bitも高周波数もクソもない。
5年後にパソコンはエアコンを超える。熱源であり、電力消費の主力に躍り出る。今、これが最も深刻とも言われるほど・・・これを何とかすることを、早急の課題にしているという話。

一方で速度の向上に対しては、既に別のアプローチを取っている。既に速度自体ではよほどの速度狂でなければ贅沢言わなければ、1GHzのPCでも動画編集はできる。DVDも見られる、ゲームもそこそこできる。web閲覧と、ワープロ関連ならこれでもオーバースペック気味の領域ですから、これだけでは消費の増加は期待できない。

そこで、今度は複数のソフトを同時に動かしたときなどに、快適に動作する手法を取った。これが、Thread(スレッド)処理の原理。CPUを複数搭載したPCは、処理能力は約3~4割しか向上しませんが、フリーズやビジーは格段に減少します。これは、同時に複数の処理を別々のプロセッサで行うから、この行為を1つのプロセッサの中で行う手法が、HyperThreadingです。

スレッドとは、処理データの最小単位。これまでは、このThread一つの処理でより多くの結果を出せるようにするSIMDを強化してきたのですが、すでにSIMDの強化には限界が来たので、強化は同時に処理できるThreadの数に変更したのです。

どうやったか、単純に結果を出す演算子で使わない演算子に次のスレッドを入れてやる。最初に書いたのですが、20段のパイプラインユニット(流れ処理装置)があり、1つのThread実行時に使われるのはそのうち大体半分以下です。そこで、その使わないユニットを生かすために、もう一つ割り込み処理させることにした。これがHTTPen4の原理。

64bitと争うインテルはこのHyperThreadingを盾にし勝負を挑みます。インテルにとっては消費者の反応が64bitに傾かなければ、64bitはAMDがある程度、草の根運動をした後で入れば良いという考え。そうすればソフトも出ていますし、価値がある。

いかがでしょう。
長くなりましたけど・・・
    • good
    • 0
この回答へのお礼

とてもごていねいに、また詳しく教えていただき、ありがとうございます。これだけ文章を書くのでさえ、相当な時間がかかったことでしょう。ご説明は少々専門的すぎて、全部を理解することは不可能ですけど、64ビット化しない理由については何となくわかったような気がします。感謝の気持ちから、良回答とさせていただきました。ありがとうございました。

お礼日時:2003/01/20 18:50

補足です


>WindowsというOSが32bitの命令で作られています
CPUに合わせて作ってあるのです。

>Itaniumという名前で販売されています
サーバー向けCPUです。それを言ったら256ビットCPUだってあります。

「x86系」であり、「パーソナルコンピュータ」用である初めての64ビットCPUはたぶん「アスロン64」です。もちろんこれにあわせたWindiowsも製作中です。
    • good
    • 0
この回答へのお礼

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

お礼日時:2003/01/20 18:51

今年の夏ごろに出ますよ。


今まで無かったのは単なる企業戦略に過ぎません。
64ビット→サーバー系
32ビット→PC系
でも、いいかげん32ビットでは限界が見えてきています。先ほどの回答でもメモリが4GBまでとありましたが、パワーユーザーはすでにそれ以上を求めています。
    • good
    • 0
この回答へのお礼

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

お礼日時:2003/01/20 18:52

質問ですが、現在でもすでに64ビットのCPUは存在しますし、販売もされています。


例えばIntelでしたらItaniumという名前で販売されています。
OSも方もLinuxでは64ビットで動作するディストリビューションもありますし。
WindowsもWindowsXP-Proが対応しているはずです。

最後にですが、80286は16ビットだったと思いました。
(懐かしい名前を聞きました。僕も使っていました)
では。
    • good
    • 0
この回答へのお礼

どうもありがとうございました。参考になりました。それから、カテゴリーがちがっていましたね。失礼しました。

お礼日時:2003/01/20 18:53

まだ必要性が無いことと、パターン技術が追いついていないからでしょう。



CPUバスの本数は、何によって決まるかはご存知ですね?
32ビットで4Gまで表せますよね?
今、メモリーはまだ256MB~1GBくらいの時代です。
これ以上のメモリーが必要になって、8ビットの時代のように、2回分割読みでは間に合わなくなった時に32ビットでは足りなくなります。
しかし、倍の64ビットにしたのでは、ものすごく大きくなるし、高価になるし、売れないじゃないですか。
今でも4cm角くらいなのに、10cm角くらいの大きさになりますよね?
プリント基板もかなり大きくしないと配線できませんので、そんなのでパソコンでも作ったら今の3倍くらいの大きさになるし、価格も2倍~3倍になります。
従って、基板やIC内部の実装密度を今の2倍以上にできる技術が必要になり、まだまだ今の技術ではできません。

作ったとしても64ビットではなく、40ビットか48ビットくらいだと思いますよ。
    • good
    • 0
この回答へのお礼

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

お礼日時:2003/01/20 18:53

まず、WindowsというOSが32bitの命令で作られています。


(一部16bit命令を含む)

そのため、その命令を処理するCPUは必然的に32bitの方が都合が良いのです。

なぜ一般に64bitCPUが登場しないのかは、CPUの製造コストの問題と64bit命令に対応してるOSが
主流を占めてないからです。

後はMicrosoftとIntelが32bitCPUの商業戦略を選択してるのも大きな理由ですが。

まあ、我々が64bitパソコンの処理能力を必要とすれば、一般に出てくるだろうし、
必要としなければ出てこないかも知れません。

記憶では64bitCPUを搭載したパソコン?スパコン?はサーバーなどではすでに使用されてるはずです。

現在のCPUの速度は約3GHz、年内には4GHzになると思います。
    • good
    • 0
この回答へのお礼

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

お礼日時:2003/01/20 18:54

たぶん互換性の問題じゃないでしょうか?ビットをあげてしまうと前のソフトが使えなくなってしまいますよね。

    • good
    • 0
この回答へのお礼

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

お礼日時:2003/01/20 18:54

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