68020とは? わかりやすく解説

MC68020

(68020 から転送)

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2020/04/29 01:35 UTC 版)

ナビゲーションに移動 検索に移動
XC68020(68020のプロトタイプ)

MC68020(エムシー ロクハチゼロニゼロ)は、1984年にモトローラが開発した32ビットマイクロプロセッサ6800068010の後継であり、その系統は後に68030に受け継がれた。低価格版の68EC020もある。

解説

MC68020

従来の同系統のプロセッサはデータバス16ビットでアドレスバス23ビットだったのに対して、68020はアドレスバスデータバスもプロセッサ内外含めて完全に32ビット化されていた。新たなパッケージング技法により、従来のDIPに対してサイズを大きくすることなく多くのピンを出力できるようになっている。68EC020はアドレスバスを24ビットにしてコストを低減させている。68020は12MHzから33MHzの速度の製品が出荷された。

68010からの改良点

68020は、演算論理ユニットALUと外部データバスと外部アドレスバスの32ビット化、新たな命令とアドレッシングモードの追加、プリフェッチの強化など、68010に様々な改良を施している。また3ステージのパイプラインを導入。それによってより高いクロック周波数が実現でき、命令の実行速度が向上した。68010には「ループモード」があり小さなループを小さな命令キャッシュの保持して高速化することができたが、あまり効果はなかった。68020ではそれを普通の256バイトの命令キャッシュに置き換え、68kシリーズで初めてキャッシュメモリを内蔵することとなった。

68000と68010では、ワード(16ビット)とロングワード(32ビット)がワード境界(アドレスが偶数の位置)にあるときのみ、ワードまたはロングワードとしてアクセスできるという制限があった。68020ではこのデータ配置制限も取り除かれた。ただし整列されていないロングワードへのアクセスは、整列されたロングワードへのアクセスよりも遅い。

リアルタイムオペレーティングシステムを考慮し、従来のユーザーモード/スーパーバイザモードそれぞれのスタックポインタに加えて、割り込み用スタックポインタが追加された。割り込みの受け入れとその処理を分離できるようになり、従来のように割り込み処理中に処理を完結させる必要性が軽減された。

コプロセッササポート

MC68020 には、新たにコプロセッサインターフェースが搭載された。これにより、最大8個のコプロセッサを接続できる。メインCPUは「Fライン命令」(オペコードの先頭4ビットが全て1の命令)を認識すると、特別なバスサイクルでコプロセッサとやり取りし、その命令をコプロセッサに実行させる。コプロセッサとしては、メモリ管理ユニット(MMU)MC68841/MC68851 や浮動小数点数演算装置 (FPUMC68881/MC68882 が用意された。MMUはCPU1つに対して1つだけ接続可能。FPUは原理的には複数個接続可能だが、通常は1つだけ接続した。コプロセッサとの接続は非同期バスで行われるため、メインプロセッサと同じ周波数のコプロセッサでなくても動作した。

マルチプロセッシング機能

マルチプロセッシングは、RMCピン[1]で外部にリード・モディファイ・ライト英語版サイクル実行中であることを示す信号を供給することで実装されている。他のプロセッサはその間メモリアクセスを控える[1]。ソフトウェアサポートとしては、TAS命令、CAS命令、CAS2命令などがある。

マルチプロセッサシステムでは、CPU間でコプロセッサを共有できない。コプロセッサからの復帰、バスエラーやアドレスエラー例外からの復帰に関わる問題を防ぐため、一般にマルチプロセッサシステム内の全CPUが同一モデルでなければならず、全FPUも同一モデルでなければならない。

命令セット

新たな命令としては、スーパーバイザモードについてのいくつかの改善と拡張、マルチプロセッシングシステムのソフトウェア制御のためのいくつかの命令(68060では削除された)、高級言語サポートのためのいくつかの命令(あまり使われず、以降の68kプロセッサでは削除された)、32ビット整数同士の掛け算(結果は64ビット)、64ビット数値を32ビット数値で割る割り算(結果は32ビットの商と余り)、ビットフィールド操作命令がある。

68000にも「スーパーバイザモード」があったが、特権モードで保護しなければならない 'MOVE from SR' という命令が非特権モードで実行可能だったためPopekとGoldbergの仮想化要件を満たしていなかった。68010以降、これが特権保護されるようになり、仮想化ソフトウェアをサポートしやすくなった。

なお、F(1111)ラインエミュレータにおいて、メモリを参照するオペコードを実行した場合、メモリーへの投機実行が行われる。この為、1111ラインエミュレータにシステムコールを配置したOS(例えばシャープ/ハドソン Human68kのVer.2.0以前)では予期せぬメモリアクセスによってバスエラーが発生するという問題が生じた。この問題はA(1010)ラインエミュレータでは発生しない。

アドレッシングモード

新しいアドレッシングモードとしては新たな間接モードが既存のモードに追加され、インデックスの使い方が柔軟になった。 あまり触れられることはないが、これらの新しいアドレッシングモードによって68020はページプリンティングに最適となり、90年代初頭の多くのレーザープリンターが68EC020コアを使用した。

68020の命令バッファ(命令キャッシュ)は256バイトで、1エントリ4バイトの64エントリがダイレクトマップで配置された。小さなキャッシュではあるが、アプリケーションの性能向上に大変効果があった。またそれによってバストラフィックが低減され、特にDMAを多用するシステムに有利となった。

XC68020の底面

使用例

コモドールAmigaアップルMacintosh IIMacintosh LC といったパーソナルコンピュータだけでなく、サン・マイクロシステムズSun-3ワークステーション、ヒューレット・パッカードのネットワークアナライザーなどにも使われた。 アーケードゲームとしてはナムコSYSTEM22、SYSTEM22SUPERへの使用が確認されている。 フランスのTGVでは、線路を通して列車に送られる信号のデコードにこのプロセッサを使用していた。戦闘機ユーロファイター タイフーンの操縦制御システムでも使われている。


派生品

MC68EC020

68EC020モトローラが発売したマイクロプロセッサである。68020の低価格版であり、アドレスバスを24ビットに縮小してあるため、最大16MBのメモリしかアクセスできない。

コモドールのコンピュータ Amiga 1200 とゲーム機 Amiga CD32 が68EC020を採用していた。アーケードゲーム用基板コナミSYSTEM-GXタイトーF3システム もこのプロセッサを使用している。レーザープリンターにも使われており、QMS PS 410、アップルはLaserWriter II NTXとLaserWriter II NTX-J、コダックは Ektaplus 7016PS、データプロダクツは LZR 1260 に採用していた。

技術データ

正式名称 MC68020[2]
動作周波数 12.5 , 16.67 , 20 , 25 , 33 MHz(最低周波数は 8 MHz。クロックは外部から供給)[2]
供給電圧 5 V
最大消費電力 1.75 W[2]
製造プロセス HCMOS, 3/8" シリコンピース[2]
パッケージ PGA 169(114ピンを使用) 34.16 x 34.16 mm[2](ヒートシンク無で 53 °C/W)[3]
アドレスバス 32ビット(4GBのフラットなアドレス空間に直接アクセス可能)[2]
データバス 32ビット
命令セット 101命令 CISC
キャッシュ 256バイト 命令キャッシュ[4][2]
レジスタ
  • アドレスレジスタ7本(32ビット)[2]
  • データレジスタ8本(32ビット)[2]
トランジスタ数 ~200 000[2]
性能 10 MIPS @ 33MHz[4]

脚注・出典

この記事は2008年11月1日までGFDLバージョン1.3以降の再ライセンス規約に基づいていたFree On-line Dictionary of Computingにある項目の資料が元になっている。

外部リンク


68020

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2021/06/09 03:26 UTC 版)

ステータスレジスタ」の記事における「68020」の解説

68020のステータスレジスタ16ビットで、上位8ビットをシステムバイト、下位8ビットをユーザバイトまたはコンディション・コード・レジスタ(CCR)と呼ぶ。 Bit 15 - 14. トレースモードフラグ:デバッグ制御フラグ Bit 13. スーパバイザフラグ:特権モードを示す Bit 12. マスタフラグ:マルチプロセッサ構成用のフラグ Bit 11. 未使用 Bit 10 - 8. 割り込みマスク:3ビットで8レベル割り込みマスクを表す。 Bit 7 - 5. 未使用 Bit 4. 拡張フラグ:キャリーフラグとほぼ同じ意味 Bit 3. ネガティブフラグ Bit 2. ゼロフラグ Bit 1. オーバーフローフラグ Bit 0. キャリーフラグ

※この「68020」の解説は、「ステータスレジスタ」の解説の一部です。
「68020」を含む「ステータスレジスタ」の記事については、「ステータスレジスタ」の概要を参照ください。

ウィキペディア小見出し辞書の「68020」の項目はプログラムで機械的に意味や本文を生成しているため、不適切な項目が含まれていることもあります。ご了承くださいませ。 お問い合わせ


英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「68020」の関連用語

68020のお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



68020のページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
ウィキペディアウィキペディア
All text is available under the terms of the GNU Free Documentation License.
この記事は、ウィキペディアのMC68020 (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。 Weblio辞書に掲載されているウィキペディアの記事も、全てGNU Free Documentation Licenseの元に提供されております。
ウィキペディアウィキペディア
Text is available under GNU Free Documentation License (GFDL).
Weblio辞書に掲載されている「ウィキペディア小見出し辞書」の記事は、Wikipediaのステータスレジスタ (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。

©2025 GRAS Group, Inc.RSS