■ 『CPU』の解説
CPU(シーピーユー、)は、コンピュータなどにおいて中心的な処理装置として働く電子回路のことである。中央処理装置(ちゅうおうしょりそうち)や中央演算処理装置(ちゅうおうえんざんしょりそうち)などと訳される。
CPUはプログラムによって様々な数値計算や情報処理、機器制御などを行う。CPUは通常はハードウェアであるプロセッサにより実現され、現代のプロセッサの大多数はマイクロプロセッサである。
「CPU」と「プロセッサ」と「マイクロプロセッサ」は、ほぼ同義語として使われる場合も多いが、本来はCPUはノイマン型コンピュータでの構成要素としての位置づけを表し、プロセッサはハードウェアとしての処理装置全般を表し、マイクロプロセッサはLSIによって実装されたプロセッサのことである。
概要
CPUは記憶装置上にあるプログラムと呼ばれる命令列を順に読み込んで解釈・実行することで情報の加工を行う。CPUはコンピュータ内での演算を行なう中心であり、CPUは通常はバスと呼ばれる信号線を介して主記憶装置や入出力回路に接続され、何段階かの入出力回路を介して補助記憶装置や表示装置、通信装置などの周辺機器が接続され、データやプログラムなど情報のやりとりを行う。人間に例えると脳に相当する部分である。
このようなCPUを用いたプログラムによるコンピュータの逐次動作がほとんどのコンピュータの基本的な動作原理となっている。記憶装置上にプログラムを配置してから、プログラムを実行する方式をプログラム内蔵方式と言う。
現在のCPUは、部品としてはプロセッサの1種である。プロセッサの多くは1チップのLSIに集積されており、MPU(Micro Processing Unit)またはマイクロプロセッサとも呼ばれる。また、算術演算機能を強化し信号処理に特化したDSP や、メモリや周辺回路を搭載し組込み機器制御を目的としたマイクロコントローラ(マイコン)などの展開種も登場している。
専用の電子回路に比べると実行速度は遅いが、プログラムを変えるだけで多様な処理が行えることから、非常に多岐にわたる用途に使用できまた高度な動作が可能となる。また専用回路に比べ設計、修正が容易である。以上のような特徴を持つため、CPUはおよそあらゆるシステムに内蔵され、現代の産業や生活の屋台骨を支える存在にまで普及している。現在最も普及しているCPUアーキテクチャの一つにARMアーキテクチャが挙げられる。ARMアーキテクチャは1991年から数え2008年初頭に出荷個数が100億個を超えるなど、家電製品から工業製品、携帯機器などに至るまで様々なシステムに組み込まれ、機器制御を司っている。また、PCなど現在の汎用コンピュータ製品における殆どのメインCPUにx86アーキテクチャが用いられており、特にインテルのx86系CPU出荷数は1978年6月9日の8086発売から2003年までの25年で10億個を越えた。
CPUの構造は1949年に世界最初のストアードプログラム方式コンピュータであるEDSACが発表された時点で、現在のCPUの原型が完成している。
CPUの発達は、プロセス技術の微細化による高速化、パイプライン並列化(命令パイプライン、演算パイプライン)、命令並列化(スーパースカラ、VLIW)、データ並列化(SIMD演算)、CPUコア並列化、スレッド並列化(同時マルチスレッディング)などに支えられている。
構造
CPUは、ALUなどの演算装置、データを一時記憶するレジスタ、メモリなどの記憶装置へのIF、周辺機器との入出力装置へのIF、CPU全体を制御する制御装置などで構成される。
その他 浮動小数点演算を行うFPU(浮動小数点演算ユニット)、レジスタより多くの情報を一時記憶するキャッシュメモリ、DMAコントローラ、タイマー、シリアルインターフェースなどの機能をCPUと同一IC内にもつものもある。
また、メモリから読み込んだ命令語を内部的なオペレーションに置き換える変換部を持つものもある。
クロック同期型のCPUは、クロック信号によって規則正しいタイミングで各部の動作を統制されている。
同じCPUであればクロック周波数が高い方が高速に動作し、一定時間に多くのことを処理できる。
1クロックで処理できる内容はCPUの設計により異なり、複数クロックで1つの機械語命令を実行するものから、1クロックで複数の命令を同時に実行できるものまである。
クロック周波数が1GHzのCPUは、1秒間に10億回の基本回路が動作する。
多くのCPUでは、大まかに言って制御部が命令の解釈とプログラムの制御の流れを制御し、演算部が演算を実行する。
高性能なCPUや、非ノイマン型のCPUや、画像処理向けのCPUは、同時に複数の命令を実行できるように複数の実行部を同一IC内に持っているものがある。
動作
ノイマン型CPUの基本的な動作は、その実装に関わらずプログラムと呼ばれる命令列を順番に実行することである。
プログラムは数値列として何らかのメモリに格納されている。CPUでは、フェッチ、デコード、実行という3つのステップがほぼ必ず存在する。
最初の段階であるフェッチとは、実行すべき命令(ある数値または数値の並び)をプログラムの置かれたメモリから取り出すことである。メモリ上の実行すべき命令の位置はプログラムカウンタで指定される。プログラムカウンタはCPUが現在見ているプログラム上の位置を示しているとも言える。命令フェッチに使用されると、プログラムカウンタはフェッチしたぶんだけ増加させられる。
CPUがメモリからフェッチした命令によってCPUの次にすべきことが決定される。デコードでは、命令をCPUにとって意味のある形式に分割する。命令を表す数値をどう分割するかは、予めそのCPUの命令セットで決定される。命令の一部の数値は命令コードと呼ばれ、実行すべき処理を指定する。その他の部分はオペランドと呼ばれ、その命令で使用する情報を示している。たとえば加算命令のオペランドは加算すべき数値を示している。オペランドには数値そのものが書かれていたり、数値のある場所(メモリのアドレスかレジスタの番号)が書かれている。古い設計では、デコーダ(デコードを行う部分)は変更不可能なハードウェア部品だった。しかし、より複雑で抽象的なCPUや命令セットではマイクロプログラム方式がしばしば使われ、命令を様々な信号に変換するのを助けている。このマイクロプログラムは書き換え可能な場合があり、製造後でも命令デコード方法を変更することができる。
フェッチとデコードの次は、実行ステップが行われる。このステップでは、CPUの多くの部分が接続され(たとえばマルチプレクサを切り替えるなどして)指定された操作を実行する。たとえば、加算を要求されている場合、ALUが所定の入力と接続され、出力と接続される。入力は加算すべき数値を提供し、出力には加算結果が格納される。加算結果が大きすぎてそのCPUに扱えない場合、算術オーバーフローフラグをフラグレジスタ(ステータスレジスタ)にセットする(RISCではフラグレジスタが存在しない場合もある)。入力や出力にはいろいろなものが使用される。演算結果が一時的かあるいはすぐに利用される場合にはレジスタと呼ばれる高速で小さなメモリ領域に格納される。メモリも入力や出力に使われる。レジスタ以外のメモリは低速だが、コスト的には一般的なメモリの方が安価であり大量のデータを格納できるため、コンピュータには必須である。
いくつかの命令はプログラムカウンタを操作する。それらは一般にジャンプ命令と呼ばれ、ループを構成したり、条件分岐をしたり、サブルーチンを実現するのに使われる。また、多くの命令はフラグレジスタを変化させる。それらのフラグはプログラムの動作に影響を与える。たとえば比較命令は二つの値を比較してフラグレジスタにその大小を示す値をセットする。そして、その値を使用してその後の処理の流れを決定するのである。
命令を実行後、同じ流れが繰り返されて次の命令をプログラムカウンタにしたがってフェッチする。もっと複雑なCPUでは、複数の命令をフェッチし、デコードし、同時に実行することもできる。しかし、基本的にどんなCPUでもやっていることはここで説明した流れと同じである。
歴史
今日(2009年)のCPUのような装置が出てくる以前、「ENIAC」のような計算機は、実行するタスク毎に物理的に配線を変更していた。このような機械では、プログラムを変更するために物理的に再構成する必要があることから「プログラム固定計算機」と呼ばれることがある(なお、ENIACは後に機能と性能を限定すれば、プログラム内蔵方式でも動作した)。
CPU は、一般にソフトウェア(プログラム)を実行する装置として定義されるため、CPUと呼べる最初の装置はプログラム内蔵方式のコンピュータからである。プログラム内蔵方式の考え方は、ENIACの設計時にすでに存在していたが、性能を考慮してENIACでは採用されなかった。ENIACが完成する以前の1945年6月30日、数学者のジョン・フォン・ノイマンは、First Draft of a Report on the EDVAC という論文を発表した。この中で、彼はプログラム内蔵方式のコンピュータの設計について概説し、「EDVAC」は1949年8月に完成した(ノイマンは単に発表しただけである。実際の設計者についてはEDVAC参照)。EDVACは様々な命令の集まりを実行するよう設計されていた。命令を組み合わせることで実用的なプログラムを構成し、EDVACで動作させることができたのである。殊にEDVACではプログラムは高速なメモリに格納されており、物理的に配線を変更することで指定されるものではない点が重要である。ノイマン型の設計では、EDVACで動作させるプログラムを変更するにはメモリを書き換えればよかったのである。
ただし、プログラム内蔵方式という点で何が最初かといえば、EDSAC(1949年)やManchester Mark Iの試作機 Baby (1948年)である。EDVACは先に設計が始まっているが、設計者間のごたごたがあって完成が遅れた。また、アイデアレベルではZuse Z3を後に開発したコンラッド・ツーゼもプログラム内蔵方式を考案していた(1936年に特許申請しているが、アメリカに出願した際にチャールズ・バベッジの解析機関との類似を指摘され、特許は成立していない。ツーゼはこのときまでバベッジの業績を知らなかったと思われる)。データとプログラムを同じ記憶装置に格納するノイマン型と全く異なる方式として、ハーバード・アーキテクチャと呼ばれるものがある。これはEDVAC以前に完成したHarvard Mark Iの方式であり、さん孔テープにプログラムを格納した。ノイマン型とハーバード型の大きな違いは、後者が命令とデータの格納場所と扱いを完全に分離していることであり、前者はどちらも同じ記憶領域に格納していた。最近のCPUは基本的にノイマン型であるが、ハーバード・アーキテクチャも部分的に採用されている(キャッシュメモリなど)。
デジタル機器としてのCPUは、状態を変更したり表現したりするために、何らかのスイッチを必要とする。電気機械式から電子式への移行期には、リレーや真空管がスイッチとして使われた。これらは、従来の完全な機械式よりも高速にスイッチを切り替えられたが、信頼性が低かった。例えば、直流順序論理回路をリレーで構築するには、チャタリングと呼ばれる問題を補正する追加のハードウェアが必要だった。一方、真空管はチャタリングは起こさないが、機能するには熱が必要であり、動作中にカソードの電子放射能力が減退(エミッション減退)して動作不能になってしまう。真空管が故障したら、故障した部位を特定して交換しなければならない。したがって、初期の電子計算機は高速化は実現したものの、電気機械式計算機よりも信頼性が低かった。EDVACのような真空管計算機は故障と故障の間の平均時間(MTBF = Mean Time Between Failure)は約 8 時間であったが、Harvard Mark Iのようなリレー式計算機はほとんど故障しなかった。しかし、信頼性よりも性能が重視され、真空管式計算機が主流となっていった。当時の同期式CPUの動作周波数は現在のCPUに比較すると非常に遅く、100kHz~4MHz程度であった。これは、当時のスイッチ部品(真空管)の切り替えに要する時間によって限定されていたのである。
トランジスタ製CPU
CPUの設計と複雑さの進化は、さらに小型で信頼性の高い電子部品を使うことで達成された。その最初の進化はトランジスタの発明である。これによって、1950年代から1960年代には、かさばって信頼性の低い真空管やリレーは使われなくなり、トランジスタ製CPUが主流となった。この改善によってさらに複雑で信頼性のあるCPUを一枚から数枚のプリント基板で構成できるようになったのである。
1964年、IBMが発表した「システム/360」アーキテクチャは、いろいろな性能と大きさのコンピュータとして実装され、それらのシリーズではプログラムを変更することなく動作させることができた。当時、たとえ同じメーカーであっても、サイズの違うコンピュータは互換性がないのが普通だったのである。この改善を成し遂げるため、IBMはマイクロプログラム方式を採用した。これは現在のCPUでも広く使われている手法である。システム/360は大変な成功を収め、その後数十年間汎用コンピュータ市場を支配し続けた。
同じ1964年、DECも、「PDP-8」という後世に影響を与えたミニコンピュータを、科学分野や研究分野に向けてリリースした。DECは、後にさらに広く使われることとなる「PDP-11シリーズ」を発表したが、このシリーズは、後に集積回路(IC)が使えるようになると、それを使ったバージョンも製造されている。トランジスタを使ったCPUでは、新たな設計上の工夫をする余裕が生じ、SIMDやベクトル計算機と呼ばれるものが出現した。そのような初期の実験的設計は、後にクレイ社の製造したスーパーコンピュータのベースとなっている。
トランジスタを使ったコンピュータは、それ以前のものと比較していくつかの明確な利点があった。信頼性向上と消費電力低下はもちろん、トランジスタによるスイッチは切り替え時間が劇的に短縮されたため、CPUが高速化されたのである。トランジスタによるコンピュータでは動作周波数は数十MHzまで高速化された。
マイクロプロセッサ
CPUの実装と設計を大きく変えた最近の技術革新は、1970年代中頃に登場したマイクロプロセッサである。世界初のマイクロプロセッサは1970年(Intel 4004)であり、広く使われるようになったのは1974年(Intel 8080)であるが、このクラス(8ビット)のCPU実装方法は完全にマイクロプロセッサだけになってしまった。それ以前のCPUが一枚から数枚の基板で実装されていたのに対して、マイクロプロセッサではそれを小さな集積回路(IC)にまとめ、多くの場合シングルチップでCPUを実現している。トランジスタのサイズが小さくなることによってゲートの静電容量が減るので、スイッチとしてもさらに高速化した。そのため、同期式マイクロプロセッサの動作周波数は数十MHzから数GHzが可能となった。また、IC上のトランジスタは技術の向上にしたがって小さくなっていき、CPUを構成するトランジスタ数は飛躍的に多くなって機能も複雑化していった。この傾向はムーアの法則と呼ばれ、CPU(IC)の高速化・集積化を正確にモデル化していた。
複雑さ、大きさ、構造、一般的な形状はこの60年間で劇的に変化したが、CPUの基本的な機能とデザインはほとんど変化していない。今日のCPUのほとんどはフォン・ノイマンが描いたプログラム内蔵方式を採用している。
ムーアの法則は未だに現実でのコンピュータの性能に近似し続けているが、従来型コンピュータの処理性能の向上余地に限界が近づきつつあることが懸念されている。これまで同様に電子回路を縮小し続けてきたが、光学的な手法で電子回路を焼き付けるには紫外線からやがてはX線に移行する必要があり、この光学的問題以前に、すでに21世紀に入ってからの市販製品でも量子論的効果が現れはじめており、エレクトロマイグレーションやリーク電流のような問題が大きくなっているためである。さらなる高性能化のために、並列コンピューティングなどの手法によるノイマン型での高性能化、ジョセフソンコンピュータなど量子技術の採用、非ノイマン型化、この半世紀のコンピュータを支えた電子技術を捨て量子コンピュータや分子コンピュータのような新たな原理に基づくコンピュータ、などが研究されている。
ビット幅
21世紀現在のコンピュータはすべて2進数によって演算しており、1ビットが2進数の1桁を意味している。CPUが内部演算回路やデータパスで扱うビット数を「ビット幅」あるいは「データパス幅」と呼んで、4、8、16、32、64ビットと4種ほどある幅の違いからCPUの性能や使用分野が大別される。
例えば、「ビット幅」や「データパス幅」が8ビットであるため8ビットCPUと呼ばれるCPUでは1度に扱えるデータの幅が8ビットであり、数値としては8桁の2進数で表せる範囲である「2の8乗」つまり「0-255」まで表現できる。また「アドレス幅」はCPUが1度に指定できるメモリ上の位置(アドレス)の範囲を制限する。例えば、アドレス幅が32ビットのCPUでは、1度のメモリ・アクセス(記憶装置への読み書き動作)によってそのCPUが指定できるメモリ・アドレスの範囲は、2の32乗、つまり4,294,967,296個の異なる位置になる。多くの場合、1つのメモリ・アドレスには8ビット=1バイトが割り当てられるので4ギビバイト(ギガバイトとほぼ同義)の範囲へアクセスできる。
これらはCPUのデータ幅やアドレス幅による単純な分類方法であり、実際のCPUではデータ信号線やアドレス指定方法に工夫することで、外部的に少ないデータパス幅や内部的に少ないアドレス幅でも効率的にメモリ・アクセスできるようにしているものがあるため、こういった分類は多少複雑になっている。
- CPUを表現する場合のビット数の意味:
- アドレス幅(内部のアドレスレジスタ幅、外部アドレスバス幅)
- データバス幅(内部データ幅、外部データバス幅)
- 内部演算幅(=ALUの幅と整数レジスタ幅)
- 命令語長
1990年代以降は4ビットから64ビットまで多様なビット幅のCPUが製品化されている。高ビット幅のCPUは機能や性能が高い反面、高集積化や回路の複雑度から高価格で消費電力も大きく、低ビット幅のCPUは機能や性能が制限される代わりに安価で低消費電力であるなど特徴があり、状況に応じて使い分けられている。また、21世紀初頭現在では、VLIWの登場によってそれまでの命令語長と内部演算幅の関係が変わり、1つのCPUコア内に複数の実行ユニット(演算器)を持つものでも1つの演算器のビット幅で表現される。
1990年代後半から21世紀に入って一般化した、いくぶん新たなCPU高速化技術についてはマルチコアやVLIW、スーパースケーラを参照のこと。
CPUのビット数による用途の例を示す。
- 携帯電話、PDA、デジタルメディアプレーヤー、携帯型と据え置き型の家庭用コンシューマーゲーム機、デジタルカメラや薄型テレビなどの高性能情報家電、ネットワーク機器や大規模なシステム制御といった組み込みシステムで比較的性能が要求される装置、比較的大きなデータを扱う必要のある電子装置に用いられており、狭義のCPUと呼ばれるものの主要な使用例であるが、2009年現在では、これらの用途も少しずつ64ビットCPUへと移行し始めている。
上記の分類に当てはまらないものとして、過去には、互いに結合し自由にビット長を増やす事が出来る方式のCPUがあり、これはビットスライスプロセッサと呼ばれた。代表的な製品にAMDのAM2900シリーズなどが挙げられる。AM2901は、スイス連邦工科大学のLilithワークステーション等に使用されていた。またデータをバイト単位で扱うCPU(バイトマシン)の他、ワード単位で扱うCPU(ワードマシン)もある(日本電気のACOS-6など)。
低消費電力化
低電圧化
最も基本的なCPUの低消費電力化技術は低電圧化であった。ロジック動作の信号線の電圧を低電圧化することは、低消費電力化につながると同時に信号を"Hi"と"Low"の間で高速に変更できるため動作速度の向上にも寄与した。
当初はリレーのような数十ボルトの動作電圧だったが、1980年代には5Vがデジタルコンピュータの標準的な動作電圧となり、1990年代には内部回路が3V程度の低電圧化を取り入れはじめ、外部との信号線でも同様の低電圧化が行なわれる頃には、CPUの内部ではさらに低い電圧が採用されるようになった。2009年現在では内部的には1V未満まで低電圧化が進められており、ノイズ耐性を考慮すればほぼ限界であると考えられている。
クロックゲーティング
ほとんどのCPU(もっと言えばほとんどの順序論理回路)は同期式である。つまり、CPUは同期信号にしたがって動作するよう設計されている。この信号は「クロック信号」として知られていて、一定周期の矩形波の形であることが多い。電気信号の伝播速度からCPU内の信号経路の長さを考慮してクロック信号の周波数が決定される。この周波数は信号伝播の最悪ケースを考慮して決めなければならない。最悪ケースを考慮して周波数を決定すれば、CPU全体が波形のエッジ部分で動作するよう設計でき、CPUの設計を簡略化できると同時にトランジスタ数も減らすことができる。しかし、この設計手法の欠点としてCPU全体が最も遅い部分を待つように設計しなければならず、全体の高速化がその遅い部分によって制限される。この制限に対処するために命令パイプラインやスーパースケーラといった手法が採られてきた。
パイプラインだけでは同期式CPUの問題を全て解決することはできない。たとえば、クロック信号は他の電気信号の遅延に影響される。クロック周波数が高くなり、さらに複雑なCPUを動作させようとしたとき、全回路を同期させるのが困難になってきた。このため、新たな高性能CPUでは1つのクロック信号でCPU全体を同期するのではなく、いくつかのクロック信号で各部分を個別に同期させるようにしている。また、クロック周波数が高くなるにつれてCPUの発熱が大きな問題となってきた。クロック信号が"Hi"と"Low"を繰り返すことで多くのロジック回路が同様に"Hi"と"Low"を繰り返し、その回路が演算処理に使われていない時でもクロック信号が供給されている間は無駄に動作して発熱する。21世紀現在CPUに使用されている半導体回路では、信号電圧を"Hi"か"Low"に保持し続けるよりも"Hi"から"Low"や"Low"から"Hi"へ移る時に多くの電気エネルギーを消費する。このため、CPUに高速処理能力を求めるとクロック周波数が高くなり発熱も多くなって、さらに冷却する必要が生じる。
つまり、無駄にクロック信号を供給することを止めれば電力消費は抑えられ発熱も小さくなる。このように、演算処理に関与しない不要ブロックへのクロック信号の供給を止めるクロックゲーティングと呼ばれる手法がある。
非同期設計
また、クロック信号そのものを無くしてしまう方法もある。クロック信号を使用しないと、回路の設計は非常に難しくなるがクロックを無くした非同期設計は消費電力と発熱の面で大きな利点がある。この技術はあまり一般的ではないが、クロックを無くしたCPUも存在する。たとえば、ARMアーキテクチャ互換のAMULETとMIPSのR3000 互換の MiniMIPS がある。大多数のCPUでは、クロックを完全に無くするのではなく部分的に非同期化することで性能を高める工夫を行なっている。例えば、非同期ALUを使ってスーパースカラーのパイプラインを構成することで演算性能を上げようとした設計などがある。全体を非同期化したときに、同期動作するCPUに比較して性能が向上するかどうかは定かではないが、少なくとも原理的には効果が期待できる。
パワーゲーティング
ただし、21世紀以降に登場している最新の高性能CPUで使用されている半導体回路技術(プロセス技術)では、消費電力に対するリーク電流の比率が大きくなり、リーク電流はクロック信号の有無に関係が無いためにこの供給停止だけでは大きな効果がないようになっている。
このような高性能CPUでは、クロック信号の供給停止だけではなく、動作していないモジュール等への電源供給そのものを遮断するパワーゲーティングと呼ばれる技術も用いられている。これまでは、高性能化したCPUが消費する大電流をロジック回路に最適化された半導体回路技術(プロセス技術)で制御することは容易ではなかったが、ようやく解決されて2009年現在、市販製品に利用されつつある。
MCU
CPUを中心に拡張された電子部品にマイクロコントローラ(MCU)がある。
このMCUはCPUに加えてプログラム格納用を含む半導体メモリやGPIOとシリアルIO、DAC/ADCといった各種入出力機能にタイマーやDMACにクロック回路、必要に応じてDSPやフラッシュメモリなどの周辺回路を1つのパッケージに内蔵して、主に小型の組込み機器の制御に使用される。
呼称
CPU(Central Processing Unit)という用語は、特定のクラスのプログラム可能論理マシンを表す用語であり、この定義は「CPU」が広く使われるようになる前の初期のコンピュータにも適用できる。この用語が一般に使われるようになったのは1960年代になってからである。
CPUの中でも特にマイクロプロセッサのことを「MPU」(Micro Processing Unit)と呼ぶことがある。日本においては、半導体由来であることから、古くからのトランジスタやダイオードの呼称と同様に「石」と呼ぶことがある。
参考文献
- ジョン・L・ヘネシー/デイビッド・A・パターソン著、富田眞冶/村上和彰/新實治男訳、『コンピュ-タ・ア-キテクチャ 設計・実現・評価の定量的アプローチ』、日経BP社、ISBN 4-8222-7152-8
- デイビッド・A・パターソン/ジョン・L・ヘネシー著、成田光彰訳、『コンピュータの構成と設計 ハードウエアとソフトウエアのインタフェース 第3版(上/下)』、日経BP社、ISBN 4-8222-8266-X/ISBN 4-8222-8267-8
- マイク・ジョンソン著、村上和彰監訳、『スーパスカラ・プロセッサ- マイクロプロセッサ設計における定量的アプローチ -』、日経BP社、ISBN 4-8227-1002-5
- 中森章著、『マイクロプロセッサ・アーキテクチャ入門 RISCプロセッサの基礎から最新プロセッサのしくみまで TECHI Vol.20』、CQ出版社、ISBN 4-7898-3331-3
■ 『CPU』に 関連する人気アイテム
CPUの創りかた | ||
CPUが回路であることを知る(参考になった人 13/14 人)
CPUが電子回路であることを知ることができる本です。 電気の蓄積、電流の遅延が、記憶の源であることを知ったとき、 遅延を考えずにプログラムすることはなくなると思われます。 挿絵は、プログラマらしいものであるが、好みによるかもしれません。 内容としては、小学生から読めるような基本的な事項から細かく説明されています。 なるべく小さい頃から読んでいるとよいかもしれません。 実際に、指定の部品で回路を作ろうとすると、すごく大変なので、 FPGA上にVerilogかVHDLで記述するのもよいかもしれない。 WEBでこのCPUのVerilog記述を公開されている方がおみえになります。 P板が高価です。(参考になった人 44/54 人)
とっても面白い本です。とくに文章が。著者の言い回し(文章)が非常にユニークで思わず笑ってしまいます。内容はしっかりしていますし、なかなか説明上手で、たとえ話などでうまく誘導してくれます。各所基本を押さえてあるので、デジタル回路設計の基礎知識はほぼ身につきます。 ぜひこのシリーズを続けて欲しいと思いました。 |
||
自然で女の子受けのいい服を集めました | ||
勝負服、持ってますか?[PR]
今女の子と飲んでるんだけど来ない?週末合コンどう? アナタは突然の誘いにどんな服を着ていきますか?
こういうときにはは女の子目線で選んだコーディネートが一番。 今なら 10,500円 以上で送料無料。 |
||
BUFFALO DVD-RAM/±R/±RW対応 SATA用 内蔵DVDドライブ DVSM-724S/V-BK | ||
DVD全フォーマット、リードライト対応。最高速書き込み可能でこの価格は最大の魅力。(参考になった人 1/1 人)
複数フォーマットが乱立しているDVDフォーマット全てに、リード・ライト対応している。 CPRMにも対応しているので、地デジのVR記録もOK。 しかも書き込み速度が速い!!(リードが速いのは当たり前) DVD-Rではx16ディスクにオーバーバーンで最高x24倍速(13,800rpm)で書いてしまう。 ただし、メディアを選ぶのでホームページで対応品を確認する必要がある。 通常使う分には、x16倍速書き込みでも充分に速いので不満はない。 DVD-RAMは、カートリッジから取り出してトレイに入れる必要があるが、 最近のドライブでは一般的な対応である。 トレイの駆動がゴムベルトのようなので、経時劣化があるかもしれないが 開口部に近いところにあるので交換は簡単にできそうだ。 まぁまぁ・・・?(参考になった人 6/8 人)
特筆すべきものはありませんが、値段、安定性の面で良い物だと思います。 付属のソフトも簡素なつくりで分かりやすいです。 個人的にはDVDドライブはPCパーツのなかでも壊れやすいパーツだと 思っているので安さを重視ですね |
||
I-O DATA PC2-4200200ピンS.O.DIMM 1GX2 SDX533-1GX2 | ||
問題ありませんでした(参考になった人 4/5 人)
東芝TX/770LSを使っています。 512Bで使用していましたが、さすがにきつくなってきました。 届いたものは、問題なくPCは認識し、フリーズも解消されました。 これから買われる方は、ioデータのサイトなどで相性を調べて買いましょう。 快調に動作しています。(参考になった人 2/2 人)
VGN-CR51B/Wに入れました。 VGN-CR51B/W購入時は1GBだったので、Vistaのため重くイライラしてました。 2GBに増えたため快調です。 増設は、VGN-CR51B/Wの裏側中央の大きな蓋を開け、元々付いている512MBを2枚外し、 購入した1GBを2枚を同じ場所にセットするだけです。 メモリーを外すときは両サイドのストッパーを横にずらすと、メモリーがポコっと 跳ね上がってきます。 はめる時は、端子部分のスリットを合わせ斜めに押し込んだ後、メモリーを倒して いくと、パチっとはまります。 裏蓋がマグネシュウム合金らしいのと、ネジに抜け止めストッパーが付いているため、 蓋の剛性で開けづらいのでネジを開けるとき1本づつ完全に抜くのではなく、 少しづつ緩めていく様にすると、ストレス無く開きます。 締めるときも、同様に少しづつ締めていけばOKです。 |
||
I-O DATA DX533-1Gx2 PC2-4200対応 増設DDR2メモリ | ||
メモリー増設で快適に!(参考になった人 2/2 人)
NEC デスクトップ VL570/Fを5年位?使用しています。 Internet Explorer8にバージョンアップしたところ急激にパフォーマンスが低下してしまいました。 NETから検索してこの商品に決めました。 PCのカバーを外したことが無かったので取り付けは不安でしたがPCの説明書を参考に難なく交換できました。 今まではPC起動からネットに繋がるまで5〜10分かかっていたのですが、 512MBから2GBになり1〜2分になりストレスが無くなりました。 メモリー増設して快適になり良かったです! 処理能力は早くなりました。(参考になった人 10/13 人)
512MBから2GBになったので処理能力は格段に早くなりました。 立ち上がりが10分以上かかってたのが3分になりました。 アウトルックの立ち上がりが1分以上かかってたのがすっと立ち上がります。 テレビがなかなか立ち上がらなかったのがすっとたちあがります。 ただ、インターネットがたまに落ちるようになりました。 ブックマークを使って移動しようとすると、止まってしまうときがあります。 これはメモリのせいかはわかりませんが、前までは処理が遅くても落ちることはありませんでした。 もしかしたら安定性にかけるメモリなのかもしれません。 まあ、処理能力が早いので、その辺は目を瞑ります。 |
||
■ 『CPU』の解説 by はてなキーワード
コンピューターの中央処理装置( Central Processing Unit )のこと。命令を読み込み、実行する部分。集積回路技術の発展で70年代中期に1チップ化できるようになったが、最初に命名されたころは「装置」と呼ぶほど大きかった。
