マイクロプロセッサ

出典: フリー百科事典『ウィキペディア(Wikipedia)』
移動先: 案内検索

テンプレート:出典の明記

ファイル:CPU 486 386.jpg
マイクロプロセッサ(Intel 80386)

マイクロプロセッサテンプレート:Lang-en-short)とは、コンピュータなどに搭載される、プロセッサ集積回路で実装したものである。

マイクロプロセッサは小型・低価格で大量生産が容易であり、コンピュータのCPUの他、ビデオカード上のGPUなどにも使われている。また用途により入出力などの周辺回路やメモリを内蔵するものもあり、一つのLSIでコンピュータシステムとして動作するものをワンチップマイコンと呼ぶ。マイクロプロセッサは一つのLSIチップで機能を完結したものが多いが、複数のLSIから構成されるものもある(チップセットもしくはビットスライスを参照)。

「CPU」、「プロセッサ」、「マイクロプロセッサ」、「MPU」は、ほぼ同義語として使われる場合も多い。本来は「プロセッサ」は処理装置の総称、「CPU」はシステム上で中心的なプロセッサ、「マイクロプロセッサ」および「MPU(Micro-processing unit)」はマイクロチップに実装されたプロセッサである。本項では、主にCPU用のマイクロプロセッサについて述べる。

マイクロプロセッサが開発される以前、CPUは真空管やトランジスタなどの単独素子を大量に使用して構成されたり、集積回路が開発されてからも、たくさんの集積回路の組み合わせとして構成されてきた。集積回路の規模が大きくなり、多くの回路素子を収めることができるようになったため、一つの大規模集積回路にCPU機能を納めることが出来るようになった。一般用マイクロプロセッサは、1971年インテルによって開発された。このマイクロプロセッサは当初電卓用に開発された、性能が非常に限られたものであったが、生産や利用が大幅に容易となったため大量に使われるようになり、その後に性能は著しく向上し、価格も低下していった。この過程でパーソナルコンピュータRISCプロセッサも誕生した。ムーアの法則に従い、集積される素子数は増加し続けている。現在ではマイクロプロセッサは、大きなメインフレームから小さな携帯電話家電まで、さまざまなコンピュータや情報機器に搭載されている。

歴史

最初のマイクロプロセッサ

ファイル:C4004 (Intel).jpg
Intel 4004 マイクロプロセッサ

様々な技術革新をベースとして、マイクロプロセッサが実現される要素がそろったのは1970年ごろのことである。最初期のマイクロプロセッサとして最も広く知られているのはインテルが製造した4004だが、他にも複数のプロジェクトでほぼ同時にマイクロプロセッサと言えるLSIが作られている。

4004の他に主なものとして、CADC、TMS 1000、μPD707・708がある。

F-14向けのフライト制御用ディジタルコンピュータの開発の要請を1968年に受けたGarrett AiResearch社が設計したのがCADC(en:Central Air Data Computer)である。MP944というチップセットから成るマイクロプロセッサで、MOSベースである。設計は1970年に完了した。そのデザインは従来の機械システムに比較して小さくて信頼性が高く、初期のトムキャットで採用された。軍用として、米海軍は商用として一般に売り出すことなどを禁止した。措置は1997年まで続いたため、CADC(MP944)は最近までほとんど知られていなかった。

TIのTMS 1000はマイクロコントローラに近い構成のLSIである。電卓向けプログラムを内蔵したTMS1802NCをリリースしたのが1971年9月17日である。

4004は1971年11月15日にリリースされた。検討段階での着想はテッド・ホフ。設計は嶋正利フェデリコ・ファジン他である。

μPD707・708は、日本コカ・コーラからシャープに提案された機器向けにNECが設計・製造したLSIである。半導体プロセスの歩留まりの都合から2チップ構成となったが、機能的にはマイクロプロセッサであり、μCOMシリーズの源流である。1971年12月にサンプルができあがった。[1]

他に、英語版の当記事ではマイクロプロセッサの起源として、Gilbert Hyattという人物による特許、PicoとGeneral Instrumentという企業の共同によるチップ、Four-Phase Systemsという企業のAL1というチップ、を挙げている。他にフェアチャイルドのPPS25、Viatron(バイアトロン)が端末装置用として開発したチップを挙げるものもいる[2]

マイクロプロセッサ特許

TIはマイクロプロセッサに関する特許を出願した。ゲイリー・ブーンはシングルチップのマイクロプロセッサに関する特許を1973年9月4日に獲得した(テンプレート:米国特許)。1971年と1976年、インテルとTIは包括的なクロスライセンス契約を締結し、インテルはTIの持つマイクロプロセッサの特許に対してロイヤリティを支払った。この間の経緯は、サイリックスとインテル間の訴訟に関する法廷文書に記述されている。この訴訟においてTIはマイクロプロセッサに関する特許の所有者および仲裁人として関与した。

マイクロプロセッサのコア(プロセッサコア)だけでなくメモリと入出力処理の回路も集積した、現代で言うマイクロコントローラの実現に関する特許は、TIのゲイリー・ブーンとマイケル・J・コクランに与えられた(テンプレート:米国特許)。

8ビットマイクロプロセッサ

ファイル:Zilog Z80.jpg
Z80 マイクロプロセッサ

4004の後継である8008は世界初の8ビットマイクロプロセッサである。これらのプロセッサはインテルの8080ザイログZ80、他のインテル製派生プロセッサの先駆者である。対抗するモトローラMC6800とバス互換としパイプライン処理の採用など改良を加えたモステクノロジー6502が、Z80と覇を競った。1980年代前半のことである。

Z806502もシステム全体のコストを低減することに注力しており、パッケージを小さくし、要求されるバスを単純なものにし、それまで外部に別チップで持たなければならなかった回路(例えばZ80はDRAMリフレッシュカウンタ)を内蔵した。これにより1980年初頭にホームコンピュータ市場が新たに生まれ、それなりに使えるマシンが、99USドルで売られるようになった。

モトローラが切り札としてリリースしたMC6809は命令セットに直交性があり美しい設計が特徴の、事実上最もパワフルな8ビットマイクロプロセッサであり、当時製品化されたマイクロプロセッサの中で最も複雑な回路から成っていた。

他の初期の8ビットマイクロプロセッサとしてSigneticsの2650がある。PDP-8を機能縮小しワンチップ化したものであるが、PDP-8を知らない層からは一風変わったパワフルな命令セットと受け止められた。

航空宇宙分野での最初のマイクロプロセッサはRCARCA 1802(別名 CDP1802、RCA COSMAC)は、1970年代のNASAの宇宙探査機ボイジャーバイキングに使われた。木星探査機ガリレオにも搭載されている(1989年出発、1995年到着)。CDP1802が使われた理由は、消費電力が極めて小さいことと、非常に広い電源電圧範囲で動作すること、製造プロセス(産業での用途Silicon on Sapphire)が宇宙線放電に他のどんなプロセッサよりも強いからであった。したがって1802は最初の放射線耐性マイクロプロセッサと呼ぶにふさわしい。

ここまでに登場したプロセッサのほとんどがマイクロプログラム方式による制御ではなく、ワイヤードロジック制御である。

16ビットマイクロプロセッサ

最初の複数チップで構成された16ビットマイクロプロセッサは1973年に登場したナショナル セミコンダクターIMP-16である。8ビット版のチップセットはIMP-8として1974年に登場した。1975年、ナショナル セミコンダクターは最初の16ビットマイクロプロセッサPACEを開発、後にNMOS版のINS8900を開発した。

その他の初期のマルチチップ16ビットマイクロプロセッサとしては、PDP-11をLSI化したLSI-11(PDP-11#LSI-11を参照)、フェアチャイルドセミコンダクターのMicroFlame 9440があり、これらは1975年から1976年に登場した。

初期のシングルチップの16ビットマイクロプロセッサには、1975年4月に完成したPANAFACOM L-16A(MN1610)、1976年のTIのTMS9900がある。どちらもミニコンピュータの影響を受けている。TMS9900は同社のミニコンピュータTI 990シリーズと互換性があった。9900はミニコンピュータTI 990/4、ホームコンピュータTI-99/4A、OEM用マイコンボードTM990シリーズに使われた。チップは大型のセラミック製64ピンDIPパッケージで、当時の8ビットマイクロプロセッサIntel 8080はもっと一般的で小さくて安いプラスチック製40ピンDIPパッケージだった。後継のチップTMS9980はIntel 8080への対抗を意識して設計された。TI 990 の16ビット命令セットを持ち、プラスチック製40ピンパッケージで、データバスは8ビット、アドレス空間は16キロバイトしかなかった。三番目のチップTMS9995は新たに設計しなおされた。ファミリーはさらに99105、99110と進化していった。

インテルはエミュレートすべきミニコンピュータを持たなかったため、全く別の道をたどる。8080を拡張して16ビットのIntel 8086を設計したのである。このx86ファミリの最初のメンバー8088はパーソナルコンピュータ(パソコン)に広く採用される。インテルは8086を8080用ソフトウェアを最も簡単に移植できる方法として提案し、成功した。8086と8088に続いて、インテルは8018680286をリリースし、1985年に32ビットの80386をリリースするに及んで、下位互換を武器にPC市場での占有状態を強固なものにした。

マイクロプロセッサ内蔵のメモリ管理機構(MMU)はChilds他(インテル)によって開発された(テンプレート:米国特許)。

16ビット化によってさらに進んだ複雑化により、以前のワイヤードロジックから、マイクロプログラム方式を採用するプロセッサが増えた。Z8000はワイヤードロジックだが[3]、68000や8086はマイクロプログラム制御である[4]。このようにマイクロプロセッサでは一旦はマイクロプログラム方式が増えたが、RISC化のためと性能競争のために、32ビット化後はワイヤードロジックに戻っており、インテルでは486でワイヤードロジックを採用した。

32ビットマイクロプロセッサ

ファイル:80486DX2 200x.png
Intel 486DX2 の金属配線(200倍に拡大)

市場では16ビットマイクロプロセッサは完全な32ビットを実装したマイクロプロセッサが現れるまでのつなぎでしかなかった。

世界初のシングルチップの32ビットマイクロプロセッサはAT&T ベル研究所のBELLMAC-32Aであり、最初のサンプル出荷は1980年で、正式出荷は1982年であった。1984年のAT&T分割の後、WE32000と改称され(WEはWestern Electricを意味する)、さらにWE32100、WE32200と続いた。これらのマイクロプロセッサはAT&Tのミニコンピュータ3B5や3B15、世界初のデスクトップコンピュータ3B2、世界初の32ビットラップトップコンピュータCompanion、世界初の(本程度のサイズの)超小型コンピュータAlexanderに使われた。AlexanderはROMカートリッジを装備しており、その点は現在のゲーム機に似ている。これらは全てベル研究所オリジナルのUNIXオペレーティングシステムが動作し、最初のウィンドウ型ソフトウェアであるxt-layersを装備していた。

インテルの最初の32ビットマイクロプロセッサはiAPX432である。1981年に登場したものの市場では失敗した。iAPX432は権限に基づくセキュリティ機構とオブジェクト指向という進んだアーキテクチャだったのだが、モトローラの68000などの対抗アーキテクチャに比較して性能が及ばなかったのである。

モトローラは1985年MC68020で、データバスもアドレスバスも完全32ビット化されたマイクロプロセッサを出荷した。68020はUNIX市場では非常に人気を博し、多くの小企業が68020を使ってデスクトップサイズのシステムを製品化した。日本でもソニーNEWSNECEWS4800住友電工のEstationなどが68020を使って製品化された。続くMC68030はチップにMMUを内蔵し、68KファミリーはMS-DOS以外のあらゆるものが動作するプロセッサとなった。さらにMC68040ではFPUを内蔵して浮動小数点演算性能を向上させた。68050は予定していた性能目標を達成できず、リリースされなかった。そしてMC68060が出荷されたころ、市場にはより高性能なRISCプロセッサがあふれていた。1990年代初頭、68Kファミリーはデスクトップ市場から消えていった。

他の多くの企業が68020やその後継プロセッサを組み込み機器用に使用した。特筆すべきは、機器に組み込まれた68020の個数は、これまでに出荷されたインテルのPentium搭載PCより多いのである。ColdFireのプロセッサコアは68020の正当な後継である。

1980年代中盤までに、ナショナル セミコンダクターは外部16ビットで内部アーキテクチャが32ビットであるマイクロプロセッサNS16032(後に32016と改称)と完全32ビット版のNS32032を開発。また、それを使用したOEM向け32ビット小型コンピュータシリーズをリリースしている。シークエント・コンピュータ1980年代中頃にNS32032を使った最初の対称型マルチプロセッサ (SMP) サーバコンピュータを開発した。これは設計という面では勝利と言えるものだったが、1980年代終盤には消えていった。

他にもザイログのZ80000などは興味深いが市場でチャンスを掴むには登場が遅すぎたため即座に消えていった。

インテルが発売した80386は、x86アーキテクチャでの最初の32ビットプロセッサであり、ここで採用されたIA-32アーキテクチャ上では多くの本格的OSが動作し、後のインテルや互換プロセッサの基礎となった。

1980年代終盤、いわゆる「マイクロプロセッサ戦争」が勃発しいくつかのマイクロプロセッサが"戦死"した。前述の唯一の設計上の勝利と称したSequentは、NS32032が消えるとともにインテルのマイクロプロセッサに切り替えた。

64ビットマイクロプロセッサ

テンプレート:更新 AlphaMIPSSPARCなどのRISCプロセッサでは、1990年代初頭から64ビット化が行われており、特にAlphaは32ビット世代は存在しない。PC(PC/AT互換機とMacintosh)向けマイクロプロセッサは21世紀に入ってから64ビット化が行われた。2003年4月にAMDOpteronが、同年6月にはIBMのPowerPC G5が出荷開始され、AMDのAthlon642003年9月、インテルXeon2004年である。

Power Mac G5が最初の64ビットデスクトップとして登場したあと、AMDが2003年9月にAthlon 64でx86(IA-32)アーキテクチャを拡張したAMD64アーキテクチャの64ビットチップを導入し、それに続いてインテルがAMD64互換のIA-32eアーキテクチャの64ビットマイクロプロセッサを登場させるに及んで、Windowsパソコンにも64ビットデスクトップ時代が到来した。AMD64は64ビットのソフトウェアと同時に32ビットの従来のアプリケーションを動作させることができるので、64ビットに対応したオペレーティングシステムで動作させることにより、プロセッサの性能と機能を発揮させることができる。AMD64における64ビット化では、レジスタのサイズとともにレジスタの数も倍増し性能の上昇に貢献している。デスクトップ向けでは64ビットWindowsはドライバの非互換性からあまり普及していないので、デスクトップではIntel 64/AMD64プロセッサは高速な32ビットCPUとして使われていることが多い。

PowerPCの64ビットへの移行は1990年代前半のプロセッサ設計当時から意識されていたため、大きな非互換問題にはならなかった。既存の整数レジスタはデータバス幅に合わせて拡張されている。IA-32と異なり、既に32本の汎用レジスタと32本の浮動小数点レジスタを持っていたのでレジスタの本数は増加していない。

またIBMメインフレームz/Architectureも、64ビットマイクロプロセッサであり、IBM z10などがある。

RISC

1980年代中盤、複数の新たな高性能RISC(reduced instruction set computer)マイクロプロセッサが登場した。それらは当初、特殊な用途のマシンやUNIXワークステーションに使われていたが、その後インテルのCPUを使ったデスクトップ以外のあらゆる分野で使われるようになった。

RISCの開発は1970年代のIBM 801に始まった。最初の商用のRISCマイクロプロセッサはミップス・テクノロジーズの32ビットプロセッサであるR2000である(1985年。R1000はリリースされなかった)。続くR3000は更に実用的な設計となり、R4000では世界初の64ビットアーキテクチャを採用した。それに対抗すべくIBMRT PC(1986年)や後継のPOWERサン・マイクロシステムズSPARCシステム(1985年)が生み出され、間もなく各主要ベンダはRISCアーキテクチャを採用したプロセッサをリリースした。AT&TのCRISP、AMDの29000、インテルのi860とi960、モトローラの88000、DEC Alphaヒューレット・パッカードPA-RISCなどである。

市場原理が働き、いくつかのマイクロプロセッサは淘汰されたり、主要な市場を変更している。

DEC Alphaは性能面では優秀と言われながら、ヒューレット・パッカードに買収された後に消滅した。ヒューレット・パッカードPA-RISCは、インテルと共同開発のItaniumに移行中である。MIPSアーキテクチャ組み込みシステムシスコシステムズのルータなど)に広く使われている。POWER/PowerPCは、Macintoshにも採用されたが、現在はサーバースーパーコンピュータのほかは、組み込みシステムが中心である。ARMアーキテクチャは当初ホームコンピュータ向けに開発されたが、現在は携帯電話PDAをはじめとした組み込みシステムで使われる。現在ARMアーキテクチャはサーバやネットブック市場への進出を目指している。

2008年現在、64ビットコンピューティング市場(スーパーコンピュータサーバーワークステーションなど)では以下が有力である。

組み込みシステムでは、以下が市場の大きな部分を占めている。

なお、PC/AT互換機の世界では、インテル、AMD、VIAは全てx86アーキテクチャのマイクロプロセッサを製造している。現在のx86マイクロプロセッサは、従来のCISCの命令セットとの上位互換を保ちながら、内部的にはRISCの技術を段階的に採用し、また各RISCマイクロプロセッサは逆に命令セットの追加を重ねたため、現在ではRISCCISCの技術的な分類は困難である。しかしRISCという用語は便宜上使われる場合が多い。

市場

世界で販売されたマイクロプロセッサのうち最も多いものは8ビットの製品である。1997年には20億個以上が出荷され、様々な用途に利用されている。また、現在は32ビットがそれに次ぐ。1990年代には32ビットのマイクロプロセッサの大部分はパソコンに使用されていたが、現在では携帯電話での使用の方が多いテンプレート:いつ。また、コンピュータゲーム機、サーバデジタル家電の分野でも大量に利用されている。

マイクロプロセッサは小さく、軽いが価格が高価なことから、航空機での輸送が盛んである。日本においてマイクロプロセッサの取扱量が最も多い空港は、成田国際空港である。

脚注

テンプレート:Reflist

関連項目

外部リンク

テンプレート:CPU technologies

テンプレート:半導体
  1. 多田則明『世界にないものを創れ』ISBN 4-906361-79-X p. 113
  2. http://www.pcmuseum.ca/jim2.asp を参照。バイアトロンについては『マイ・コンピュータ入門』にも言及がある
  3. 嶋『マイクロコンピュータの誕生』p. 156
  4. bit臨時増刊『ダイナミック・アーキテクチャ』pp. 312-317