Motorola 68000シリーズ( 680x0、m68000、m68k 、または68kとも呼ばれる)は、 32ビットの複合命令セットコンピュータ(CISC)マイクロプロセッサのファミリーです。 1980年代から1990年代初頭にかけて、パーソナルコンピュータやワークステーションで広く普及し、 Intelのx86マイクロプロセッサの主要な競合製品でした。
680x0シリーズは、初期のApple Macintosh、Sharp X68000、Commodore Amiga、Sinclair QL、Atari STおよびFalcon、Atari Jaguar、Sega Genesis(メガドライブ)およびSega CD、Philips CD-i、Capcom System I(アーケード)、AT&T UNIX PC、Tandy Model 16/16B/6000、Sun Microsystems Sun-1、Sun-2およびSun-3、NeXT Computer、NeXTcube、NeXTstationおよびNeXTcube Turbo、初期のSilicon Graphics IRISワークステーション、Aesthedes 、 MASSCOMPのコンピュータ、Texas Instruments TI-89 / TI- 92電卓、Palm Pilot(Palm OS 4.x以前のすべてのモデル)、Control Data Corporationで使用されたプロセッサとして最もよく知られています。 CDCNETデバイスインターフェース、VTech Precomputer Unlimited、そしてスペースシャトル。
モトローラは1994年に680x0シリーズアーキテクチャの開発を中止し、IBMおよびアップルコンピュータと共同でAIMアライアンスの一環として開発したRISCベースのアーキテクチャであるPowerPCに置き換えた。現代のデスクトップコンピュータには680x0シリーズのプロセッサは搭載されていないが、派生プロセッサは組み込みシステムで現在も使用されている。
68010 :
68020 :
68030 :
68040 :
68060 :

680x0シリーズのプロセッサは、ハイエンドのテキサス・インスツルメンツ製電卓(TI-89、TI-92、Voyage 200シリーズ)から、 Palm OS 1.xから4.x(OS 5.xはARMベース)を実行するPalm Pilotシリーズの全機種、さらにはスペースシャトルの重要な制御システムに搭載された耐放射線バージョンまで、さまざまなシステムで使用されてきました。
680x0ファミリーは、 Macintosh 128K、Amiga、Sinclair QL、Atari ST、Genesis / Mega Drive、NG AES / Neo Geo CD、CDTVなどのデスクトップコンピュータやビデオゲームコンソールの動力源としてよく知られていました。1980年代には、 AT&TのUNIX PC、TandyのModel 16/16B/6000、Sun MicrosystemsのSun-1、Sun-2、Sun-3、NeXT Computer、Silicon Graphics (SGI)など、多数のUnixワークステーションやサーバーのプロセッサとして選ばれました。セガサターンは、オーディオ処理やその他のI/Oタスクに68000を使用していますが、ジャガーには、基本的なシステム制御と入力処理を目的とした68000が搭載されており、ゲームロジックの実行によく使用されました。セガ、カプコン、SNKなどのアーケード基板にも、68000プロセッサが多数使用されています。
AdobeのPostScriptインタープリタの最初の数バージョンは68000ベースでした。Apple LaserWriterおよびLaserWriter Plusに搭載された68000は、当時Macintoshコンピュータで使用されていたバージョンよりもクロック速度が速かった。その後、標準解像度のLaserWriter IIntx、IIf、IIg(こちらも300 dpi)、高解像度のLaserWriter Pro 600シリーズ(通常600 dpiだが、 最小限のRAMが搭載されている場合は300 dpiに制限される)、そして非常に高解像度のLinotronicイメージセッターである200PS(1500+ dpi)と300PS(2500+ dpi)など、後のPostScriptインタープリタには高速な68030が搭載されました。その後、Adobeは一般的にプロセッサにRISCを好んで使用しました。これは、競合他社がPostScriptクローンで既にRISC、多くの場合AMD 29000シリーズを採用していたためです。初期の68000ベースのAdobe PostScriptインタープリタとそのハードウェアは、冷戦時代の米国のロケットやミサイルにちなんで名付けられました。例えば、アトラス、レッドストーンなどです。
680x0ファミリーから派生したマイクロコントローラは、非常に幅広い用途で使用されてきました。CPU32およびColdFireマイクロコントローラは、自動車用エンジンコントローラとして数百万個が製造されています。
多くの独自ビデオ編集システムは、使いやすいグラフィックインターフェースを備えたブラックボックスである MacroSystem Casablanca (1997 年) のように、68000 プロセッサを使用していました。これはアマチュアおよび趣味のビデオグラファー市場を対象としていました。また、その以前の、より大型でプロフェッショナルなバージョンである「DraCo」(1995 年) も注目に値します。画期的なQuantel Paintboxシリーズは、初期の 24 ビットペイントおよびエフェクトシステムで、1981 年に最初にリリースされ、その寿命の間、680x0 ファミリーのプロセッサのほぼすべての範囲を使用しました (設計に実装されなかった 68060 を除く)。ビデオ分野のもう 1 つの競合製品である Abekas 8150 DVE システムは 680EC30 を使用し、後に Globecaster と改名された Play Trinity は複数の 68030 を使用しています。ロバート・ボッシュ社(後のBTS、1983年)が製造したボッシュFGS-4000/4500ビデオグラフィックスシステムは、メインプロセッサとして68000を使用しており、他の複数のプロセッサを駆動して、グーローシェーディングやフォンシェーディングを容易に適用できるコンピュータ上で3Dアニメーションを実行しました。オペレーティングシステムは、改良版のモトローラVERSAdosが動作していました。
PDP-11やVAXに精通している人は、68000シリーズにも違和感なく馴染めるだろう。汎用レジスタがデータレジスタとアドレスレジスタに分割されている点を除けば、68000アーキテクチャは多くの点で32ビット版のPDP-11と言える。
命令セットは、それ以前のプロセッサ(例えば8080)やそれ以降のプロセッサ(例えばx86)と比べて、より直交性の高いものでした。つまり、特定の命令で特定のアドレッシングモードを使用するという制限を受けることなく、演算とオペランドを自由に組み合わせることが可能でした。この特性により、人間にとってプログラミングが比較的容易になり、コンパイラ用のコードジェネレータの作成も容易になりました。
68000シリーズには、8つの32ビット汎用データレジスタ(D0~D7)と8つのアドレスレジスタ(A0~A7)があります。最後のアドレスレジスタはスタックポインタであり、アセンブラはラベルSPをA7と同等として認識します。
さらに、16ビットのステータスレジスタを備えています。上位8ビットはシステムバイトであり、その変更は特権です。下位8ビットはユーザーバイトであり、条件コードレジスタ(CCR)とも呼ばれ、その変更は特権ではありません。68000の比較演算、算術演算、論理演算は、条件コードを変更して結果を記録して、後続の条件付きジャンプで使用します。条件コードビットは、「ゼロ」(Z)、「キャリー」(C)、「オーバーフロー」(V)、「拡張」(X)、および「負」(N)です。「拡張」(X)フラグは、キャリーフラグとは別であるため、特に注目に値します。これにより、算術演算、論理演算、シフト演算による余分なビットを、制御フローとリンクのためにキャリーから分離することができます。
68000には「スーパーバイザモード」がありましたが、ステータスレジスタを別のレジスタにコピーする唯一の命令「MOVE from SR」が非特権命令でありながら機密性の高い命令であったため、PopekとGoldbergの仮想化要件を満たしていませんでした。Motorola 68010以降では、仮想化ソフトウェアをより適切にサポートするために、この命令は特権命令に変更されました。
68000シリーズの命令セットは、大きく以下のカテゴリに分類できます。
Motorola 68020では、スーパーバイザ状態のマイナーな改善と拡張、マルチプロセッシングシステムのソフトウェア管理のためのいくつかの命令 (68060 で削除)、あまり使用されなかった高水準言語のサポート (将来の 680x0 プロセッサから削除)、より大きな乗算 (32×32→64 ビット) および除算 (64÷32→32 ビットの商と 32 ビットの余り) 命令、およびビット フィールド操作を含むいくつかの新しい命令が追加されました。
標準のアドレス指定モードは以下のとおりです。
さらに、ステータスレジスタへのアクセス、そして後のモデルではその他の特殊レジスタへのアクセスも可能になった。
Motorola 68020は、スケーリングされたインデックスアドレスモードを追加し、既存の多くのモードに間接参照のレベルをさらに追加した。
ほとんどの命令にはドットと文字の接尾辞が付いており、8ビットバイト(".b")、16ビットワード(".w")、32ビットロング(".l"))に対して操作を実行できます。
ほとんどの命令は二項関係であり、つまり、操作にはソースとデスティネーションがあり、デスティネーションが変更されます。注目すべき命令は次のとおりです。
第4世代の68060は、Intel P5マイクロアーキテクチャのほとんどの機能と同等の機能を提供した(ただし、命令セットアーキテクチャの互換性はなかった) 。
モトローラは、CPUコアのメジャーアップデート版に、68000、68020、68040、68060といった偶数を主に使用しました。68010は68000のコアに若干の変更を加えた改良版であり、同様に68030は68020の改良版で、より強力な機能がいくつか追加されていましたが、いずれもコアのメジャーアップグレードと分類できるほど重要なものではありませんでした。
The 68050 was reportedly "a minor upgrade of the 68040" that lost a battle for resources within Motorola, competing against projects that had been scheduled to succeed it: the 0.5μm, low-power, low-cost "LP040", and the superscalar, superpipelined "Q", borrowing from the 88110 and anticipated as the 68060.[20] Subsequent reports indicated that Motorola had considered the 68050 as not meriting the necessary investment in production of the part.[21] Odd-numbered releases had always been reactions to issues raised within the prior even numbered part; hence, it was generally expected that the 68050 would have reduced the 68040's power consumption (and thus heat dissipation), improved exception handling in the FPU, used a smaller feature size and optimized the microcode in line with program use of instructions. Many of these optimizations were included with the 68060 and were part of its design goals. For any number of reasons, likely that the 68060 was in development, that the 80486 was not progressing as quickly as Motorola assumed it would, and that the 68060 was a demanding project, the 68050 was cancelled early in development.
There was no official revision of the 68060, as Motorola was in the process of shifting away from the 68000 and 88000 processor lines into its new PowerPC business, so the 68070 was never developed. Had it been produced, it would have been a revised 68060, likely with a superior FPU (pipelining was widely speculated upon on Usenet groups). There was a CPU with the 68070 designation, however this was not officially part of Motorola's 680x0 lineup and was instead produced by Philips. It was also produced many years prior to the release of the 68060 (as well as its predecessors). This 68070 was a licensed and somewhat slower version of the 16/32-bit 68000 with a basic DMA controller, I2C host and an on-chip serial port, and was used as the main CPU in the Philips CD-i.
モトローラは、68060 以降の製品ロードマップを発表しており、これには 1995 年までに 200〜350 MIPS の 68080 と、2000 年までに 68100 という名前になる可能性のある 800 MIPS の製品が含まれていました。[ 21 ]これらの計画はすべて、モトローラが PowerPC を優先して 68060 (680x0 シリーズの最後の CPU) のリリース直後の 1994 年に 680x0 シリーズの開発を中止したため、頓挫しました。68080 という名称の CPU も製造されましたが、上記の 68070 と同様に、これも公式には 680x0 シリーズの一部ではなく、さまざまな改良を加えた 680x0 シリーズの最新の FPGA 実装として製造されました。[ 1 ] [ 2 ] [ 3 ]
IBM互換メインフレームであるパーソナルコンピュータXT/370とAT/370はそれぞれ、 S/370メインフレームの命令をエミュレートするためのカスタムマイクロコードを備えた、改良されたMotorola 68000プロセッサを2つ搭載していた。[ 22 ] [ 23 ]
アリゾナ州に拠点を置く Edge Computer Corp は、元 Honeywell の設計者によって設立されたと言われており、68000 シリーズと互換性のあるプロセッサを製造し、Motorola の製品よりも「3 ~ 5 倍の性能と18 ~ 24 か月の時間的優位性」があると主張された。 [ 24 ] 1987 年、同社は Edge 1000 シリーズの「Edge メインフレーム アーキテクチャで Motorola 命令セットを実装した 32 ビット スーパーミニ コンピュータ」を発表し、命令フェッチ パイプライン (IFP) とオペランド実行パイプライン (OEP) という 2 つの独立したパイプラインを採用し、4096 エントリの分岐キャッシュを備えた分岐予測ユニットに依存し、複数のバスを介して命令とオペランドを取得する。[ 25 ]その後、Edge Computer と Olivetti の間で合意が成立し、Olivetti は Edge Computer のマシンをベースにした自社の「Linea Duo」シリーズの製品を発表した。[ 26 ]同社はその後、Edgcore Technology Inc. [ 27 ] : 12 (Edgecore Technology Inc. [ 28 ]とも報告されている) に社名を変更した。1987年にOlivettiと同社の E1000 プロセッサを供給する契約を結んだ Edgcore は、1989 年に Philips Telecommunications Data Systems と E2000 プロセッサを供給する別の契約を結んだ。これは 68030 命令セットをサポートし、16 VAX MIPS の性能評価を提供すると報告されている。[ 29 ] Nixdorf ComputerおよびHitachiとも同様の契約が1989 年に締結された。 [ 30 ] [ 31 ]
Edge Computer reportedly had an agreement with Motorola.[28] Despite increasing competition from RISC products, Edgcore sought to distinguish its products in the market by emphasising its "alliance" with Motorola, employing a marketing campaign drawing from Aesop's fables with "the fox (Edgecore) who climbs on the back of the stallion (Motorola) to pluck fruit off the higher branches of the tree".[32] Other folktale advertising themes such as Little Red Riding Hood were employed.[33] With the company's investors having declined to finance the company further, and with a number of companies having been involved in discussions with other parties, Arix Corp. announced the acquisition of Edgcore in July 1989.[31] Arix was reportedly able to renew its deal with Hitachi in 1990, whereas the future of previous deals with Olivetti and Philips remained in some doubt after the acquisition of Edgcore.[34]
In 1992, a company called International Meta Systems (IMS) announced a RISC-based CPU, the IMS 3250, that could reportedly emulate the "Intel 486 or Motorola 68040 at full native speeds and at a fraction of their cost". Clocked at 100 MHz, emulations had supposedly been developed of a 25 MHz 486 and 30 MHz 68040, including floating-point unit support, with the product aiming for mid-1993 production at a per-unit cost of 50~60ドル。[ 35 ] PowerPC 615などのプロセッサでエミュレーションサポートが明らかに普及する中、1994年にIMSはエミュレーション技術の特許を出願したが、ライセンス供与先が見つからなかったと報じられた。[ 36 ]この製品の導入が何度も遅れ、ある時は「チップの音声処理能力を向上させる必要性」が原因とされた[ 37 ]が、どうやら同社はインテルのP6製品に対抗するために別のチップ、Meta6000を導入しようとしたようだ。[ 38 ]最終的に、IMSは特許を訴訟弁護士のTechSearchに売却して破産した。TechSearchは1998年にインテルをIMSの特許侵害で訴えようとした。[ 39 ]報道によると、TechSearchは訴訟に敗訴したが、控訴を申し立て、インテルの代表者が報道機関への発言でTechSearchのビジネスモデルを不利に描写したことを根拠に、インテルを「名誉毀損と中傷」で訴えようとした。[ 40 ]
メインラインの68000プロセッサが姿を消した後も、68000ファミリーはマイクロコントローラや組み込みマイクロプロセッサ版で一部使用されています。これらのチップには、上記の「その他」に挙げられているCPU32(別名68330)、ColdFire、QUICC、DragonBallなどが含まれます。
FPGA技術の登場により、ハードウェア開発者の国際チームが、 68000を多くの機能強化を施したFPGAコアとして再設計しました。彼らのコアは68080として知られており、VampireブランドのAmigaアクセラレータで使用されています。[ 1 ] [ 2 ] [ 3 ]
Magnetic Scrolls社は、テキストアドベンチャーゲームにおいて、68000の命令セットの一部を仮想マシンのベースとして使用した。
1980年代から1990年代初頭にかけて、68000がデスクトップコンピュータで広く使われていた頃は、主にIBM PC互換機で使われていたIntelのx86アーキテクチャと競合していました。第1世代の68000 CPUは、主に16ビットの8086、8088、80286と競合しました。第2世代は80386(最初の32ビットx86プロセッサ)と、第3世代は80486と競合しました。第4世代はP5 Pentiumシリーズと競合しましたが、旧68000市場の多くが消滅していたか、消滅寸前だった(AtariやNeXTの場合など)、あるいは新しいアーキテクチャ(MacintoshやAmigaのPowerPC、SunのSPARC、Silicon Graphics (SGI)のMIPS)に移行していたため、前世代ほど広く使われることはありませんでした。
組み込みシステムで成功を収めているプロセッサアーキテクチャは数十種類に及ぶ。中には、68000よりもはるかにシンプルで小型かつ安価なマイクロコントローラもあれば、比較的高度で複雑なソフトウェアを実行できるものもある。68000の組み込み版は、PowerPC、ARM、MIPS、SuperHなどをベースとしたプロセッサアーキテクチャと競合することが多い。