JPS60107138A - デイジタル・コンピユ−タ用中央処理装置 - Google Patents
デイジタル・コンピユ−タ用中央処理装置Info
- Publication number
- JPS60107138A JPS60107138A JP59204201A JP20420184A JPS60107138A JP S60107138 A JPS60107138 A JP S60107138A JP 59204201 A JP59204201 A JP 59204201A JP 20420184 A JP20420184 A JP 20420184A JP S60107138 A JPS60107138 A JP S60107138A
- Authority
- JP
- Japan
- Prior art keywords
- register
- address
- data
- central processing
- processing unit
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/22—Microcontrol or microprogram arrangements
- G06F9/226—Microinstruction function, e.g. input/output microinstruction; diagnostic microinstruction; microinstruction format
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30003—Arrangements for executing specific machine instructions
- G06F9/30007—Arrangements for executing specific machine instructions to perform operations on data operands
- G06F9/30036—Instructions to perform operations on packed data, e.g. vector, tile or matrix operations
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30003—Arrangements for executing specific machine instructions
- G06F9/30076—Arrangements for executing specific machine instructions to perform miscellaneous control operations, e.g. NOP
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30098—Register arrangements
- G06F9/30101—Special purpose registers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30145—Instruction analysis, e.g. decoding, instruction word fields
- G06F9/30149—Instruction analysis, e.g. decoding, instruction word fields of variable length instructions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30145—Instruction analysis, e.g. decoding, instruction word fields
- G06F9/3016—Decoding the operand specifier, e.g. specifier format
- G06F9/30167—Decoding the operand specifier, e.g. specifier format of immediate specifier, e.g. constants
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30181—Instruction operation extension or modification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30181—Instruction operation extension or modification
- G06F9/30189—Instruction operation extension or modification according to execution mode, e.g. mode flag
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30181—Instruction operation extension or modification
- G06F9/30192—Instruction operation extension or modification according to data descriptor, e.g. dynamic data typing
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Executing Machine-Instructions (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Hardware Redundancy (AREA)
- Exchange Systems With Centralized Control (AREA)
- Measurement Of Velocity Or Position Using Acoustic Or Ultrasonic Waves (AREA)
- Paper (AREA)
- Measuring Pulse, Heart Rate, Blood Pressure Or Blood Flow (AREA)
- Motorcycle And Bicycle Frame (AREA)
- Advance Control (AREA)
- Communication Control (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
[産業上の利用分野1
本発明は、ディジタル・コンビコータ用の中央処理装置
に関する。
に関する。
し従来の技術]
M年、仮想メモリ管理システム、32ビット・データ・
バス、データ・キャッシュ、種々のデータ・・タイプ及
びアドレッシング・モードの使用能力、可変長命令フォ
ーマット並びにその他の進歩した特徴を備えた、多数の
ディジタル・コンピュータが開発されている。しかしな
がら、今日まで、イのような特徴を具備させた結果は、
高価格で物理的サイズの大きいコンピュータである。例
えば、上記した属性を具備する]ンビコータの中央処理
装置は500立方インチらの回路板空間を占めるといっ
ても過言ではない。結果として、そのような]ンピコー
タを多くの用途に用いるのは不可能であり、実際的では
ない。
バス、データ・キャッシュ、種々のデータ・・タイプ及
びアドレッシング・モードの使用能力、可変長命令フォ
ーマット並びにその他の進歩した特徴を備えた、多数の
ディジタル・コンピュータが開発されている。しかしな
がら、今日まで、イのような特徴を具備させた結果は、
高価格で物理的サイズの大きいコンピュータである。例
えば、上記した属性を具備する]ンビコータの中央処理
装置は500立方インチらの回路板空間を占めるといっ
ても過言ではない。結果として、そのような]ンピコー
タを多くの用途に用いるのは不可能であり、実際的では
ない。
[発明の概要]
本発明は、小型で経湾的であるばかりか、32ビツト・
データ・バス、可変長命令、種々のアドレッシング・モ
ード及びその伯の優れた特徴を備えるディジタル・コン
ビコーク用中央処理装置を提示する。その中央処理装置
は、パイプ・ライン及びマイクロプログラムの設計を採
用し、非常にコンパクトなマイクロコート′で強力な機
能の実行を許容するハードウェア上の多数の特徴を備え
ている。
データ・バス、可変長命令、種々のアドレッシング・モ
ード及びその伯の優れた特徴を備えるディジタル・コン
ビコーク用中央処理装置を提示する。その中央処理装置
は、パイプ・ライン及びマイクロプログラムの設計を採
用し、非常にコンパクトなマイクロコート′で強力な機
能の実行を許容するハードウェア上の多数の特徴を備え
ている。
成る好ましい実施例では、本発明の中央処y!!装置は
、他のレジスタを間接的にアドレスするために使用され
る複数のポインタ・レジスタを含む。
、他のレジスタを間接的にアドレスするために使用され
る複数のポインタ・レジスタを含む。
複数の汎用レジスタの各々には、レジスタ・アドレスが
割当てられる。特定の汎用レジスタを参照するマイクロ
命令の解読の間に、ポインタ・レジスタにはその汎用レ
ジスタのレジスタ・アドレスがロードされ得る。マイク
ロ命令が実行される時、その汎用レジスタは、当該汎用
レジスタを選択するアドレスとしてポインタ・レジスタ
の内容を利用づることで、アクセスされる。
割当てられる。特定の汎用レジスタを参照するマイクロ
命令の解読の間に、ポインタ・レジスタにはその汎用レ
ジスタのレジスタ・アドレスがロードされ得る。マイク
ロ命令が実行される時、その汎用レジスタは、当該汎用
レジスタを選択するアドレスとしてポインタ・レジスタ
の内容を利用づることで、アクセスされる。
本発明の第二の実施例では、中央処理装置は、1個のサ
イズ・レジスタと、マイクロ命令演算コードの解読の間
に動作する手段であって、マイクロ命令で特定されるデ
ータ・サイズを示すコードをサイズ゛・レジスタにロー
ドするものとを含む。
イズ・レジスタと、マイクロ命令演算コードの解読の間
に動作する手段であって、マイクロ命令で特定されるデ
ータ・サイズを示すコードをサイズ゛・レジスタにロー
ドするものとを含む。
マイクロ命令の実行の間、サイズ・レジスタは、データ
・バス中のエレメントの数を決定するために、種々の時
点で利用される。
・バス中のエレメントの数を決定するために、種々の時
点で利用される。
本発明のこれら及びその他の特徴は、添f]図面を参照
する以下の説明から明らかとなるであろう。
する以下の説明から明らかとなるであろう。
[実施例]
第1図は、本発明の中央処理装置の好ましい実施例を含
むコンビコータ・システムを示す。このコンビコータ・
システムは、中央処理装置(CPU)10、システム・
バス20、メモリ・アレイ22及びコンソール・ターミ
ナル24を具備する。この]コンビコータシステムはま
た、例えばディスク制御装置やネットワーク・インター
フエースのような、システム・バス20に連結する種々
の周辺装置(図示せず)を具備り−る1、]ンンール・
ターミナル24は、もしも適当なインターフェース、例
えばローカル・エリア・ネットワークへのインターフェ
ースがシステム・バス20−Lに用意されるならば、除
去してもよい。CI’U10は、メモリ制御モジコール
12とデータ・バス・Uジュール14からなる。
むコンビコータ・システムを示す。このコンビコータ・
システムは、中央処理装置(CPU)10、システム・
バス20、メモリ・アレイ22及びコンソール・ターミ
ナル24を具備する。この]コンビコータシステムはま
た、例えばディスク制御装置やネットワーク・インター
フエースのような、システム・バス20に連結する種々
の周辺装置(図示せず)を具備り−る1、]ンンール・
ターミナル24は、もしも適当なインターフェース、例
えばローカル・エリア・ネットワークへのインターフェ
ースがシステム・バス20−Lに用意されるならば、除
去してもよい。CI’U10は、メモリ制御モジコール
12とデータ・バス・Uジュール14からなる。
プログラム命令の実際の実行は、データ・バス・モジコ
ール14によって制御され、メモリ制御モジュール12
は、一般的には、データ・バス・モジュール1ノ1どシ
ステム・バス2oとの間のインターフェースとして作用
する。メモリ制御モジュール12及びデータ・バス・モ
ジコール14は、メモリ制御バス16及びメモリ・デー
タ・バス18を介して通信する。
ール14によって制御され、メモリ制御モジュール12
は、一般的には、データ・バス・モジュール1ノ1どシ
ステム・バス2oとの間のインターフェースとして作用
する。メモリ制御モジュール12及びデータ・バス・モ
ジコール14は、メモリ制御バス16及びメモリ・デー
タ・バス18を介して通信する。
メモリ制御モジ:i−ル12は、データ・バス・モシ−
−一−ル14に関しC非同期的に動作するマイクロプロ
グラムされた装置である。メモリ制御モジュール12は
、C1m U 10とシステム・バス20との間のイン
ターフェースを与えるだ(プでなく、データ・バス・モ
ジュール14のためのアドレス翻訳機能、命令1971
77機能及びデータ・キレ191機能を与える。アドレ
ス翻訳は、データ・バス・モジコール14によって特定
される仮想アドレスの実際の物理アドレスへの翻訳又は
変換を云う。データ・キセッシ1の詔は、CPU内の高
速メモリ・アレイで最近使われるようになった記憶装置
をいAう。
−一−ル14に関しC非同期的に動作するマイクロプロ
グラムされた装置である。メモリ制御モジュール12は
、C1m U 10とシステム・バス20との間のイン
ターフェースを与えるだ(プでなく、データ・バス・モ
ジュール14のためのアドレス翻訳機能、命令1971
77機能及びデータ・キレ191機能を与える。アドレ
ス翻訳は、データ・バス・モジコール14によって特定
される仮想アドレスの実際の物理アドレスへの翻訳又は
変換を云う。データ・キセッシ1の詔は、CPU内の高
速メモリ・アレイで最近使われるようになった記憶装置
をいAう。
第2図において、メモリ制御モジュール12は、送受信
器30、バス32,34、ill訳バッファ/キャツシ
コ40、物理アドレス・レジスタ42、システム・バス
・インターフエース44、マージ/回転ユニツ1〜48
、マイク[1シーケン”リー/制御記憶装置50、パス
制御装置52及び命令ブリフェッチ・ユニット56を具
tg5する。メモリ制御ユニットの機能については、デ
ータが特定の仮想アI〜レスから読出されるべきことを
データ・バス・モジコール14が要求するどきに生じる
一連の動作を概観覆ることによって説明Jる。データ・
バス・モジュール14は、仮想アドレスをバス・ラッチ
64に置き、その仮想アドレスはそのポイン1へからメ
モリ・データ・バス18を介してメモリ制御モジコール
12に送出される。
器30、バス32,34、ill訳バッファ/キャツシ
コ40、物理アドレス・レジスタ42、システム・バス
・インターフエース44、マージ/回転ユニツ1〜48
、マイク[1シーケン”リー/制御記憶装置50、パス
制御装置52及び命令ブリフェッチ・ユニット56を具
tg5する。メモリ制御ユニットの機能については、デ
ータが特定の仮想アI〜レスから読出されるべきことを
データ・バス・モジコール14が要求するどきに生じる
一連の動作を概観覆ることによって説明Jる。データ・
バス・モジュール14は、仮想アドレスをバス・ラッチ
64に置き、その仮想アドレスはそのポイン1へからメ
モリ・データ・バス18を介してメモリ制御モジコール
12に送出される。
そのアドレスは、送受信器30を通ってバス32に至る
。パス32上の仮想アト1ノスはI’ll訳バッファ/
キャッシコ40に視われ、もしも要求された翻訳エント
リが存在する(例えば、キVツシュ・ヒツト)ならば、
対応する物理アドレスがパス34上に作り出される。バ
ス34から、物理アドレスは物理アドレス・レジスタ4
2にロードされ、そこからバス32上に[1−ドされる
。パス32十の物理アドレスはそれで、翻訳バッファ/
キャッシュ40及びシステム・バス・インターフェース
・コニット44に同時に提示される。もしも要求された
データがキャッシコ中にある場合には、翻訳バッファ/
キャッシコ40ば、次のマシーン・1ナイクルでバス3
4上に要求されたデータを送出づる。もしもキャッシュ
・ミスが生じたならば、要求されたデータをメモリ・ア
レイ22から取り出すために、システム・バス・リーイ
クルが実行される。データがメモリから受け取られると
、それは、システム・バス・インターフェース44から
バス34上に至る。一旦、キャツシコ又【まメモリから
γ−りがバス34上に受信されると、そのデータは、マ
ージ/回転ユニット48を介してバス32にロードされ
る。要求されたデータは、送受信器30及びメモリ・デ
ータ・バス18を介してデータ・バス・モジュール14
に至り、仮想読出リイクルが完了する。メモリ制御動作
の上記シーケンスは、マイクロシーケンサ/制御記憶装
置50から出る制御信号によって実行され、統御される
。
。パス32上の仮想アト1ノスはI’ll訳バッファ/
キャッシコ40に視われ、もしも要求された翻訳エント
リが存在する(例えば、キVツシュ・ヒツト)ならば、
対応する物理アドレスがパス34上に作り出される。バ
ス34から、物理アドレスは物理アドレス・レジスタ4
2にロードされ、そこからバス32上に[1−ドされる
。パス32十の物理アドレスはそれで、翻訳バッファ/
キャッシュ40及びシステム・バス・インターフェース
・コニット44に同時に提示される。もしも要求された
データがキャッシコ中にある場合には、翻訳バッファ/
キャッシコ40ば、次のマシーン・1ナイクルでバス3
4上に要求されたデータを送出づる。もしもキャッシュ
・ミスが生じたならば、要求されたデータをメモリ・ア
レイ22から取り出すために、システム・バス・リーイ
クルが実行される。データがメモリから受け取られると
、それは、システム・バス・インターフェース44から
バス34上に至る。一旦、キャツシコ又【まメモリから
γ−りがバス34上に受信されると、そのデータは、マ
ージ/回転ユニット48を介してバス32にロードされ
る。要求されたデータは、送受信器30及びメモリ・デ
ータ・バス18を介してデータ・バス・モジュール14
に至り、仮想読出リイクルが完了する。メモリ制御動作
の上記シーケンスは、マイクロシーケンサ/制御記憶装
置50から出る制御信号によって実行され、統御される
。
マイク【コシークンリ/制御記憶装置50によって実行
される特定のマイクロプログラムは、データ・バス・モ
ジコール14によってメモリ制御モジュール12にメモ
リ制御パス16を介して送り出されるメモリ制御コマン
ド28により選択される。このコマンド28は、仮想ア
ドレスがメモリ・データ・パス18十に置かれるのど同
じ旧態に送出される。システム・バス20の利用を必要
とする、メモリ制御モジュール12のマイクロプログラ
ムのためには、マイクロプログラムは、バス制御装置5
2を経て動作する。
される特定のマイクロプログラムは、データ・バス・モ
ジコール14によってメモリ制御モジュール12にメモ
リ制御パス16を介して送り出されるメモリ制御コマン
ド28により選択される。このコマンド28は、仮想ア
ドレスがメモリ・データ・パス18十に置かれるのど同
じ旧態に送出される。システム・バス20の利用を必要
とする、メモリ制御モジュール12のマイクロプログラ
ムのためには、マイクロプログラムは、バス制御装置5
2を経て動作する。
メモリ制御モジコール12ににって実行される(N+加
的な機能は、データ・バス・モジコール14にj;る実
行のための命令のブリフェッチである。ブリフェッチさ
れた命令は命令ブリフェッチ・ユニット56に収容され
、必要どされる際に1度に1バイトずつメモリ制御バス
16を介して、データ・バス・モジュール14に送られ
る。メモリ制御バス16はそれ故、2つの異なる機能、
即ち、メモリ制御モジュール12からデータ・バス・モ
ジコール14への命令の転送と、データ・バス・モジュ
ール14からメ玉り制御モジコール12へのメモリ制御
コマンドの転送とを果たす。
的な機能は、データ・バス・モジコール14にj;る実
行のための命令のブリフェッチである。ブリフェッチさ
れた命令は命令ブリフェッチ・ユニット56に収容され
、必要どされる際に1度に1バイトずつメモリ制御バス
16を介して、データ・バス・モジュール14に送られ
る。メモリ制御バス16はそれ故、2つの異なる機能、
即ち、メモリ制御モジュール12からデータ・バス・モ
ジコール14への命令の転送と、データ・バス・モジュ
ール14からメ玉り制御モジコール12へのメモリ制御
コマンドの転送とを果たす。
データ・バス・モジコール14にJ−って実行される各
マクロ命令は、一般に、演算コード(OP]−ド)と、
それに従う1又は2以上のオペランド指定子(スペシフ
ァイアー)とからなる。オペランド指定子は、データ又
はマクロ命令が作用すべきデータの位詔を指定する。前
者の場合、オペランド指定子に含まれるデータをリテラ
ル(literal)と呼ぶ。後者の場合、オペランド
指定子は、アドレッシング・モード及びレジスタの番号
(例えばアドレス)を示す。アドレッシング・モードの
例として、指定レジスタがデータを収容している直接モ
ード及び、指定レジスタがデータのアドレスを収容して
いる間接モードがある。例えば、レジスタ3及びレジス
タ4の内容を加算するマクロ命令では、OPコードは加
算を指定し、2つのオペランド指定子は、レジスタ3直
接及びレジスタ4直接をそれぞれ指定する。ここで説明
する好ましい実施例では、各Of”1−ド及びオペラン
ド指定子は、1バイト又は2バイト以上を含み、そのマ
クロ命令のバイトは、データ・バス・モジュール14に
よって受信され、一度に1バイトずつ処理される。
マクロ命令は、一般に、演算コード(OP]−ド)と、
それに従う1又は2以上のオペランド指定子(スペシフ
ァイアー)とからなる。オペランド指定子は、データ又
はマクロ命令が作用すべきデータの位詔を指定する。前
者の場合、オペランド指定子に含まれるデータをリテラ
ル(literal)と呼ぶ。後者の場合、オペランド
指定子は、アドレッシング・モード及びレジスタの番号
(例えばアドレス)を示す。アドレッシング・モードの
例として、指定レジスタがデータを収容している直接モ
ード及び、指定レジスタがデータのアドレスを収容して
いる間接モードがある。例えば、レジスタ3及びレジス
タ4の内容を加算するマクロ命令では、OPコードは加
算を指定し、2つのオペランド指定子は、レジスタ3直
接及びレジスタ4直接をそれぞれ指定する。ここで説明
する好ましい実施例では、各Of”1−ド及びオペラン
ド指定子は、1バイト又は2バイト以上を含み、そのマ
クロ命令のバイトは、データ・バス・モジュール14に
よって受信され、一度に1バイトずつ処理される。
第2図のデータ・バス・モジュール14を参照する。マ
ク[1命令の実行は、制御論理ユニット60によって実
行されるマイクロ命令によって遂行される。制御論理ユ
ニット60は、A L U 、汎用目的のレジスタ、2
つのポインタ・レジスタ、マクロプログラム・カウンタ
及び以下に説明するその他の要素を具備する。各マクロ
命令に対して、制御論理ユニット60は、制御記憶装置
62に収容された一連のマクロ命令を実行する。新しい
マクロ命令のOPコードがメモリ制御パス16から命令
レジスタ10にロードされた時に、マクロ命令のシーケ
ンスが開始する。OPコードの値及び現在のマイクロ命
令の部分は、解読ROM74での記憶場所をアドレスす
るために使用される。それに応じて、解読ROM 70
は、多数の出力、即ち、マクロ命令のOPコードに対応
する最初のマイクロ命令の制御記憶装@62でのアドレ
スを指定する次マイクロアドレスと、マクロ命令が作用
すべきデータのバイト長を示す5IZE信号と、以下に
説明する機能のCCCLASS (コンディション・コ
ード クラス)信号とを出力する。命令レジスタ70が
オペランド指定子を含むとき、@ H’ROM 74は
、追加的に、アドレッシング・モードが直接か否かを示
づ、REGISTER信号を出力する。
ク[1命令の実行は、制御論理ユニット60によって実
行されるマイクロ命令によって遂行される。制御論理ユ
ニット60は、A L U 、汎用目的のレジスタ、2
つのポインタ・レジスタ、マクロプログラム・カウンタ
及び以下に説明するその他の要素を具備する。各マクロ
命令に対して、制御論理ユニット60は、制御記憶装置
62に収容された一連のマクロ命令を実行する。新しい
マクロ命令のOPコードがメモリ制御パス16から命令
レジスタ10にロードされた時に、マクロ命令のシーケ
ンスが開始する。OPコードの値及び現在のマイクロ命
令の部分は、解読ROM74での記憶場所をアドレスす
るために使用される。それに応じて、解読ROM 70
は、多数の出力、即ち、マクロ命令のOPコードに対応
する最初のマイクロ命令の制御記憶装@62でのアドレ
スを指定する次マイクロアドレスと、マクロ命令が作用
すべきデータのバイト長を示す5IZE信号と、以下に
説明する機能のCCCLASS (コンディション・コ
ード クラス)信号とを出力する。命令レジスタ70が
オペランド指定子を含むとき、@ H’ROM 74は
、追加的に、アドレッシング・モードが直接か否かを示
づ、REGISTER信号を出力する。
解lROM74によつで出力される次のマイクロアドレ
スは、マイクロシーケンサ76を介して制御記憶アドレ
ス・レジスタ78に至る。ili制御記憶アドレス・レ
ジスタ78に収容されたアドレスは、制御記憶装置62
でアクセスされるマイクロ命令を指定りる。アクレスさ
れたマイクロ命令の部分は、多数の指定装置に発送され
る。成る部分は、実行のために制御論理ユニット60へ
行く。第二の部分はマイクロシーケンサ76へ行き、そ
こでは、次のマイクロ命令のアドレスを決定するために
利用される。成る状況では、制御記憶装置62はまた、
メモリ制御信号28と、サイズ・レジスタ88及びCC
論理lニット90にロードされるべき値を供給する。
スは、マイクロシーケンサ76を介して制御記憶アドレ
ス・レジスタ78に至る。ili制御記憶アドレス・レ
ジスタ78に収容されたアドレスは、制御記憶装置62
でアクセスされるマイクロ命令を指定りる。アクレスさ
れたマイクロ命令の部分は、多数の指定装置に発送され
る。成る部分は、実行のために制御論理ユニット60へ
行く。第二の部分はマイクロシーケンサ76へ行き、そ
こでは、次のマイクロ命令のアドレスを決定するために
利用される。成る状況では、制御記憶装置62はまた、
メモリ制御信号28と、サイズ・レジスタ88及びCC
論理lニット90にロードされるべき値を供給する。
第1のマイクロ命令が実行を開始した後、マイクロシー
ケンサ76は、次のマイクロ命令のアドレスを制御記憶
アドレス・レジスタ78に置かせ、シーケンスは、マク
ロ命令に対応する全てのマイクロ命令が実行されてしま
うまで続く。マイクロスタック80は、制御記憶装置6
2のマイクロプログラムでマイクロサブルーチン及びマ
イクロ1−ラップの利用を可能にするために設【づられ
る。マイクロスタック80の動作は、以下に詳細に説明
づる。
ケンサ76は、次のマイクロ命令のアドレスを制御記憶
アドレス・レジスタ78に置かせ、シーケンスは、マク
ロ命令に対応する全てのマイクロ命令が実行されてしま
うまで続く。マイクロスタック80は、制御記憶装置6
2のマイクロプログラムでマイクロサブルーチン及びマ
イクロ1−ラップの利用を可能にするために設【づられ
る。マイクロスタック80の動作は、以下に詳細に説明
づる。
データ・バス・モジュール14に含まれる他のエレメン
トは、バス・ラッチ64、バス82,84、ラッチ86
.4jイズ・レジスタ98、CC(コンディション・=
1−ド)論理ユニット90、インデックス・レジスタ9
2、コンソール・インターフェース94、割込制御+論
理ユニット9G及び命令レジスタ・バッフ?98である
。バス82及び同84は、種々のivi後関係でデータ
・バス・モジュール14のニレメン1〜間でデータを通
ずために使われる。ラッチ86は、バス82とバス84
との間の隔離を与える。サイズ・レジスタ88は、ai
l+ !311論理ユニツ1−60のための既定データ
・パス幅を示すコード(通常は、解読RO,M74又は
制御記憶装置62からの5IZE信号から導出される。
トは、バス・ラッチ64、バス82,84、ラッチ86
.4jイズ・レジスタ98、CC(コンディション・=
1−ド)論理ユニット90、インデックス・レジスタ9
2、コンソール・インターフェース94、割込制御+論
理ユニット9G及び命令レジスタ・バッフ?98である
。バス82及び同84は、種々のivi後関係でデータ
・バス・モジュール14のニレメン1〜間でデータを通
ずために使われる。ラッチ86は、バス82とバス84
との間の隔離を与える。サイズ・レジスタ88は、ai
l+ !311論理ユニツ1−60のための既定データ
・パス幅を示すコード(通常は、解読RO,M74又は
制御記憶装置62からの5IZE信号から導出される。
)を保持づ−るために利用される。コンディション・コ
ード論理ユニツ[〜90は、制御論理ユニラ1−60の
出力に基づくマクロレベルのコンディション・コードの
セジティングを制御するために利用される。インデック
ス・レジスタ92は、次マイク[1アドレスを決定する
ためにマイクロシーケンサ76によって利用され得る4
ビツト・レジスタである。コンソール・インターフェー
ス94は、コンソール・ターミナル24(第1図)とデ
ータ・バス・モジコール14との間をインターフェース
するために使われるシリアル・ボートである。割込制御
論理コニット96は、割込を起こすべぎがどうかを決定
するため、システム・バス2oがらの任意の割込をCP
Uの現在状態と比較する。命令レジスタ・バッファ98
は、バス82を介して命令レジスタ70の内容を制御論
理ユニット60に送る手段を提供する。
ード論理ユニツ[〜90は、制御論理ユニラ1−60の
出力に基づくマクロレベルのコンディション・コードの
セジティングを制御するために利用される。インデック
ス・レジスタ92は、次マイク[1アドレスを決定する
ためにマイクロシーケンサ76によって利用され得る4
ビツト・レジスタである。コンソール・インターフェー
ス94は、コンソール・ターミナル24(第1図)とデ
ータ・バス・モジコール14との間をインターフェース
するために使われるシリアル・ボートである。割込制御
論理コニット96は、割込を起こすべぎがどうかを決定
するため、システム・バス2oがらの任意の割込をCP
Uの現在状態と比較する。命令レジスタ・バッファ98
は、バス82を介して命令レジスタ70の内容を制御論
理ユニット60に送る手段を提供する。
マイク1]シーケンサ76の1幾能は、マイクロ命令が
制御論理ユニット60によって実行されるシーケンスを
決定することである。所与のマイクロ命令の実行の間に
、次のマイクロ命令の制御記憶装置62でのアト1ノス
を決定して、そのアドレスを制御記憶アドレス・レジス
タ78に首くことによって、マイクロシーケンサ76は
、これを達成する。マイクロシーケンサ76は、現在の
マイクロ命令にコード化された情報並びに種々のステー
タス・ライン及び制御ライン上の信号に基づき、次マイ
クロ命令のアドレスを決定する。
制御論理ユニット60によって実行されるシーケンスを
決定することである。所与のマイクロ命令の実行の間に
、次のマイクロ命令の制御記憶装置62でのアト1ノス
を決定して、そのアドレスを制御記憶アドレス・レジス
タ78に首くことによって、マイクロシーケンサ76は
、これを達成する。マイクロシーケンサ76は、現在の
マイクロ命令にコード化された情報並びに種々のステー
タス・ライン及び制御ライン上の信号に基づき、次マイ
クロ命令のアドレスを決定する。
第3図は、マイクロシーケンサ76をより詳細に示す。
次マイクロアドレスは、MUX(マルチプレクサ)20
0の出ノjによって決定される。MUX200への入力
は、ページ・レズシタ201、マイクロブ[1グラム・
カウンタ202及びORゲー1−204である。これら
の入力の間の選択は、JUMPMUX206及び後述の
仙の制御信号によって決定される。ページ・レジスタ
201は、現時マイクロ命令アドレスの高位ビット(複
数)を保持する。
0の出ノjによって決定される。MUX200への入力
は、ページ・レズシタ201、マイクロブ[1グラム・
カウンタ202及びORゲー1−204である。これら
の入力の間の選択は、JUMPMUX206及び後述の
仙の制御信号によって決定される。ページ・レジスタ
201は、現時マイクロ命令アドレスの高位ビット(複
数)を保持する。
マイクロプログラム・カウンタ202は、現時マイクロ
命令アドレスの低位ビット(複数)に1を加えたものを
保持する。ページ・レジスタ201及びマイクロプログ
ラム・カウンタ202はそれ故、−緒になって、次の連
続するマイクロ命令アドレスを指し示す。MUX200
によるこれら入力の選択は、コンピュータ・システムが
一連にマイクロ命令を実行覆る簡単な場合を表わす。
命令アドレスの低位ビット(複数)に1を加えたものを
保持する。ページ・レジスタ201及びマイクロプログ
ラム・カウンタ202はそれ故、−緒になって、次の連
続するマイクロ命令アドレスを指し示す。MUX200
によるこれら入力の選択は、コンピュータ・システムが
一連にマイクロ命令を実行覆る簡単な場合を表わす。
ORゲート204は、ORゲート204の出力どバス2
10上のアドレスどの間で論理OR演算を行なう。バス
210は、解読ROM74、ジャンプ・レジスタ 21
2又はマイク[1スタツク80のいずれかによって決定
されたアドレスを収容する。マイクロ命令のOPコード
又は1バイトのオペランド指定子が解読される場合には
、解読ROM 74からバス210上のアドレスが導出
される。この場合、解読ROM74は、このマクロ命令
バイトによって特定される(幾重を実行するために必要
とされる最初のマクロ命令のアドレスの全部又は一部の
いずれかを供給する。非連続的なジャンプ又はブランチ
がマイクロ命令のシーク−ンスで生じる場合には、一般
に、ジャンプ・レジスタ 212がバス210上のアド
レスのソースである。ブランチしようとするアドレスは
、制御記憶装置62中の現時マイクロ命令の内容から導
出され、ジャンプ・レジスタ 212にfffiかれる
。W 後に、マイクロ4ノブルーヂン又はマイクロトラ
ップからの復帰(リターン)が生じる場合には、マイク
ロスタック80がバス210−にのアドレスのソースで
ある、1復帰アドレスは、元のザブルーチン・]−ル又
はトラップが生じた時にマイクロスタック80に収容さ
れる。復帰アドレスは、リーブルーチン・コールに対し
てページ・レジスタ201の内容及びマイクロプログラ
ム・ノJウンタ 202の内容によるか、又は、トラッ
プに対して、ページ・レジスタ201の内容及びマイク
ロプログラム・カウンタ 202の内容マイナス1(即
ち、現在のマイクロアドレス)によるかのどちらがで決
定される。後者の場合、条(’l (Jデクレメンタ
214が、マイクロプログラム・カウンタ 202の内
容から1を減するために使われる。
10上のアドレスどの間で論理OR演算を行なう。バス
210は、解読ROM74、ジャンプ・レジスタ 21
2又はマイク[1スタツク80のいずれかによって決定
されたアドレスを収容する。マイクロ命令のOPコード
又は1バイトのオペランド指定子が解読される場合には
、解読ROM 74からバス210上のアドレスが導出
される。この場合、解読ROM74は、このマクロ命令
バイトによって特定される(幾重を実行するために必要
とされる最初のマクロ命令のアドレスの全部又は一部の
いずれかを供給する。非連続的なジャンプ又はブランチ
がマイクロ命令のシーク−ンスで生じる場合には、一般
に、ジャンプ・レジスタ 212がバス210上のアド
レスのソースである。ブランチしようとするアドレスは
、制御記憶装置62中の現時マイクロ命令の内容から導
出され、ジャンプ・レジスタ 212にfffiかれる
。W 後に、マイクロ4ノブルーヂン又はマイクロトラ
ップからの復帰(リターン)が生じる場合には、マイク
ロスタック80がバス210−にのアドレスのソースで
ある、1復帰アドレスは、元のザブルーチン・]−ル又
はトラップが生じた時にマイクロスタック80に収容さ
れる。復帰アドレスは、リーブルーチン・コールに対し
てページ・レジスタ201の内容及びマイクロプログラ
ム・ノJウンタ 202の内容によるか、又は、トラッ
プに対して、ページ・レジスタ201の内容及びマイク
ロプログラム・カウンタ 202の内容マイナス1(即
ち、現在のマイクロアドレス)によるかのどちらがで決
定される。後者の場合、条(’l (Jデクレメンタ
214が、マイクロプログラム・カウンタ 202の内
容から1を減するために使われる。
制御記憶装置62に収容される各マイクロ命令は、デー
タ・バス制御フィールド、コンディション・コード/サ
イズ・フィールド及び次アドレス制御フィールドの3個
のフィールドを具備する。データ・パス制御フィールド
は、制御論理ユニット6゜〈第2図)によるマイクロ命
令の実行を制御するために使われる。コンディション・
コード/サイズ・フィールドは、後で説明1゛る。次ア
ドレス制御フィールドは、次のマイクロ命令のアドレス
を決定するlこめにマイクロシーケンサ76によって使
われる。次アドレス制御フィールドは、概念的には、次
のように4個の1ナブフイールドに分割できる。即ら、 タイプ ジレンプ・コンディション オア ジャンプ・アドレス サブフィールド1タイプ」は、表1に列記し以下に詳細
に説明するブランチ・タイプの1つを特定する。ザブフ
ィールド1−ジャンプ・コンディション1は、非連続的
なブランチがマイクロ命令のシーケンスで生じたか否か
を決定するためにテストすべきコンディションを特定す
る。第3図を参照すると、サブフィールド「ジャンプ・
コンディション−1は部分的に、MUX200の制御の
ためにJUMP MUX 206への入力のどれを選択
づべきかを決定する。選択され得る典型的なジャンプ・
コンディションは、Δl U−]ンディション・コード
、割込又はコンソール・ホールトが受信されたか否か、
ORMux 208の出力がU口が否が及び信号IRI
NVAI IDが出されたか否か、である。IRINV
ALII)信号は、命令レジスタ70が有効な情報を含
まないときには何時でも、命令プリフTツヂ・ユニツ1
〜56から出ノjされる。
タ・バス制御フィールド、コンディション・コード/サ
イズ・フィールド及び次アドレス制御フィールドの3個
のフィールドを具備する。データ・パス制御フィールド
は、制御論理ユニット6゜〈第2図)によるマイクロ命
令の実行を制御するために使われる。コンディション・
コード/サイズ・フィールドは、後で説明1゛る。次ア
ドレス制御フィールドは、次のマイクロ命令のアドレス
を決定するlこめにマイクロシーケンサ76によって使
われる。次アドレス制御フィールドは、概念的には、次
のように4個の1ナブフイールドに分割できる。即ら、 タイプ ジレンプ・コンディション オア ジャンプ・アドレス サブフィールド1タイプ」は、表1に列記し以下に詳細
に説明するブランチ・タイプの1つを特定する。ザブフ
ィールド1−ジャンプ・コンディション1は、非連続的
なブランチがマイクロ命令のシーケンスで生じたか否か
を決定するためにテストすべきコンディションを特定す
る。第3図を参照すると、サブフィールド「ジャンプ・
コンディション−1は部分的に、MUX200の制御の
ためにJUMP MUX 206への入力のどれを選択
づべきかを決定する。選択され得る典型的なジャンプ・
コンディションは、Δl U−]ンディション・コード
、割込又はコンソール・ホールトが受信されたか否か、
ORMux 208の出力がU口が否が及び信号IRI
NVAI IDが出されたか否か、である。IRINV
ALII)信号は、命令レジスタ70が有効な情報を含
まないときには何時でも、命令プリフTツヂ・ユニツ1
〜56から出ノjされる。
一般に、選択されたコンディションが真であるならば、
MLJX200は、ORゲート 204から供給される
アドレスを選択し、ブランチが生じる。もしもコンディ
ションが偽ならば、MUX200はページ・レジスタ2
01及びマイクロプログラム・カウンタ 202から供
給される次の連続アドレスを選択する。
MLJX200は、ORゲート 204から供給される
アドレスを選択し、ブランチが生じる。もしもコンディ
ションが偽ならば、MUX200はページ・レジスタ2
01及びマイクロプログラム・カウンタ 202から供
給される次の連続アドレスを選択する。
ORゲート204によってfj<Zわれるオア演算は、
バス210」−のアドレスの低位ピッ1へに作用する。
バス210」−のアドレスの低位ピッ1へに作用する。
このコンビコータ・システムの好ましい実施例では、O
RMUX208の出力は4ビツト幅であり、成るマイク
ロ命令のブランチ・タイプでは、これらの4ピツ1〜が
、バス210上の下位4ビツトと論理和をとられる。O
RMUX208はこのように、多重指定ブランチ(即ち
、ケーシング)を行なうことができる。ORMUX20
8の出力は、現時マイクロ命令のサブフィールド[オア
Jによって制御される。表2は、瞥ナブフィールド「オ
ア」を3ピツ1〜幅に拡げ、8セツトの4ビツト入力ま
でから選択し得るようにした、本発明の好ましい実施例
を示す。ザブフィールド「オア」の値0乃至7に対応す
る各選択に関し、表2は、ORMUX208の出力ビッ
トORMUX3乃至○RM U XOの各々に対する値
を列記した。ゼロの1ナブフイールド値に対し、ORM
UX208の全出力ビットはゼ[]である。値1では、
もしもIRINV△L I r)信号が出ているならば
ORMUXOが1にレストされる。値2では、ORMU
Xlが1にセットされる。この値は、マイクロサブルー
チンからの多重復帰(リターン)を与えるために使うと
便利である。値3では、ORゲート204の出力は、表
に示した4木のメモリ制御ステータス・ラインドの信号
によって決定される。MFM ERRは、メモリ制御モ
ジコール12からの雑多のJラー信号を云う。PAG[
CRO8SINGは、512バイトのページ境界を越え
るデータをアクレスする試みを示す。TRMISSは、
要求された仮想アドレスに対する翻訳エントリが翻訳バ
ッファ/キャッシコ40に発見されなかったことを示す
。MODIFY REl=USIEは、メモリ書込動作
が、その対応する翻訳バッファのエントリにモディファ
イ・ピッI〜がレットされていなかったために行なわれ
なかったことを示す。コード値4ではORMUX208
の出力は、lRINVALID信号及びBRFALSE
信号によって決定される。BRFALSE(、i月は、
マクロレベルのブランチが起こるだろうか否かを示す。
RMUX208の出力は4ビツト幅であり、成るマイク
ロ命令のブランチ・タイプでは、これらの4ピツ1〜が
、バス210上の下位4ビツトと論理和をとられる。O
RMUX208はこのように、多重指定ブランチ(即ち
、ケーシング)を行なうことができる。ORMUX20
8の出力は、現時マイクロ命令のサブフィールド[オア
Jによって制御される。表2は、瞥ナブフィールド「オ
ア」を3ピツ1〜幅に拡げ、8セツトの4ビツト入力ま
でから選択し得るようにした、本発明の好ましい実施例
を示す。ザブフィールド「オア」の値0乃至7に対応す
る各選択に関し、表2は、ORMUX208の出力ビッ
トORMUX3乃至○RM U XOの各々に対する値
を列記した。ゼロの1ナブフイールド値に対し、ORM
UX208の全出力ビットはゼ[]である。値1では、
もしもIRINV△L I r)信号が出ているならば
ORMUXOが1にレストされる。値2では、ORMU
Xlが1にセットされる。この値は、マイクロサブルー
チンからの多重復帰(リターン)を与えるために使うと
便利である。値3では、ORゲート204の出力は、表
に示した4木のメモリ制御ステータス・ラインドの信号
によって決定される。MFM ERRは、メモリ制御モ
ジコール12からの雑多のJラー信号を云う。PAG[
CRO8SINGは、512バイトのページ境界を越え
るデータをアクレスする試みを示す。TRMISSは、
要求された仮想アドレスに対する翻訳エントリが翻訳バ
ッファ/キャッシコ40に発見されなかったことを示す
。MODIFY REl=USIEは、メモリ書込動作
が、その対応する翻訳バッファのエントリにモディファ
イ・ピッI〜がレットされていなかったために行なわれ
なかったことを示す。コード値4ではORMUX208
の出力は、lRINVALID信号及びBRFALSE
信号によって決定される。BRFALSE(、i月は、
マクロレベルのブランチが起こるだろうか否かを示す。
コード値5では、ORMUX 2(illの出力は、列
記したスタータス信号によって決定される。○VERF
LOWは、以下に説明するPSI−Vコードをイウ。I
NTERRUPI−及びCONSOLEHΔ1−1は、
それぞれ、割込制御論理コニット96及びコンソール・
インターフェース94からの信号をいう。コード値6で
は、ORMUX208の出力は、インデックス・レジス
タ92(第2図)の内容に等しい。コード値7では、O
Rゲート204の出力は、サイズ・レジスタ88の内容
によって決定される。
記したスタータス信号によって決定される。○VERF
LOWは、以下に説明するPSI−Vコードをイウ。I
NTERRUPI−及びCONSOLEHΔ1−1は、
それぞれ、割込制御論理コニット96及びコンソール・
インターフェース94からの信号をいう。コード値6で
は、ORMUX208の出力は、インデックス・レジス
タ92(第2図)の内容に等しい。コード値7では、O
Rゲート204の出力は、サイズ・レジスタ88の内容
によって決定される。
表1は、マイクロシーケンリーフ6が次のマイクロアド
レスを選択する方法をまとめたものである。
レスを選択する方法をまとめたものである。
現時マイクロ命令のサブフィールド「タイプ−1は、表
1の第1欄に列記したブランチ・タイプの一つを指定す
る。これらのタイプの動作は次の段落で説明する。表1
において、記号μPCは、マイクロプログラム・カウン
タ202を表わす。
1の第1欄に列記したブランチ・タイプの一つを指定す
る。これらのタイプの動作は次の段落で説明する。表1
において、記号μPCは、マイクロプログラム・カウン
タ202を表わす。
ブランチ・タイプがジャンプ又はサブルーチン・ジャン
プであるどきは、現時マイクロ命令のり一ブフィールド
「ジX7ンプ・アドレスJは、ジャンプ・レジスタ 2
13にロードされる。このアドレスは、バス210上に
置かれ、このポイントから、それは変更なしにORゲー
ト204及びMUX200を通過する。次マイク[1ア
ドレスはそれ故、現時マイクロ命令のサブフィールド「
″ジ17ンブ・アドレス」によって完全に決定される。
プであるどきは、現時マイクロ命令のり一ブフィールド
「ジX7ンプ・アドレスJは、ジャンプ・レジスタ 2
13にロードされる。このアドレスは、バス210上に
置かれ、このポイントから、それは変更なしにORゲー
ト204及びMUX200を通過する。次マイク[1ア
ドレスはそれ故、現時マイクロ命令のサブフィールド「
″ジ17ンブ・アドレス」によって完全に決定される。
ジャンプ及びザブルーチン・ジャンプのブランチ・タイ
プは、マイクロ命令のフローにa3りる無条伺(アンコ
ンディションナル)ブランチを起こさせるために利用さ
れる。サブルーチン・ジャンプが実行されると、ページ
・レジスタ201及びマイクロプログラム・カウンタ
202の内容は、マイクロスタック80にブツシュされ
る。
プは、マイクロ命令のフローにa3りる無条伺(アンコ
ンディションナル)ブランチを起こさせるために利用さ
れる。サブルーチン・ジャンプが実行されると、ページ
・レジスタ201及びマイクロプログラム・カウンタ
202の内容は、マイクロスタック80にブツシュされ
る。
ブランチというブランチ・タイプは、現ページ内でマイ
クロアドレスへの条11付ジャンプを行なうために使わ
れる。表1に示覆ように、次マイクロアドレスの上位5
ビツトは、ページ・レジスタによって決定され、下位8
ビツトはジャンプ・コンディションに(Lづいて決定さ
れる。もしもジャンプ・コンディションが真ならば、下
位ビットは、現時マイクロ命令のり一ブフィールド[ジ
ャンプ・アドレス」の下位からジャンプ・レジスタ21
2を介して導出される。もしもジャンプ・コンディショ
ンが偽ならば、ジャンプは生じず、下位ビットtよマイ
ク1]プログラム・カウンタ202から導出される。ジ
ャンプ・コンディションは、現時マイクロ命令のサブフ
ィールド「ジャンプ・コンディションlに基づきJUM
P MUX 20Gによって選択された信号に等しい。
クロアドレスへの条11付ジャンプを行なうために使わ
れる。表1に示覆ように、次マイクロアドレスの上位5
ビツトは、ページ・レジスタによって決定され、下位8
ビツトはジャンプ・コンディションに(Lづいて決定さ
れる。もしもジャンプ・コンディションが真ならば、下
位ビットは、現時マイクロ命令のり一ブフィールド[ジ
ャンプ・アドレス」の下位からジャンプ・レジスタ21
2を介して導出される。もしもジャンプ・コンディショ
ンが偽ならば、ジャンプは生じず、下位ビットtよマイ
ク1]プログラム・カウンタ202から導出される。ジ
ャンプ・コンディションは、現時マイクロ命令のサブフ
ィールド「ジャンプ・コンディションlに基づきJUM
P MUX 20Gによって選択された信号に等しい。
ケース(Case)のブランチ・タイプは、ジャンプ・
コンディションが真である場合に次マイクロアドレスの
下位ビットがORMUX208の出力どの組合けでジャ
ンプ・レジスタ212によって決定されることを除いて
、ブランチに類似している。特に、ORMUX 208
の4個の出力(表2)は、ORゲート 204によって
ジャンプ・レジスタ212の下位4ビツトと論理和をと
られる。
コンディションが真である場合に次マイクロアドレスの
下位ビットがORMUX208の出力どの組合けでジャ
ンプ・レジスタ212によって決定されることを除いて
、ブランチに類似している。特に、ORMUX 208
の4個の出力(表2)は、ORゲート 204によって
ジャンプ・レジスタ212の下位4ビツトと論理和をと
られる。
リブルーチン・ブランチ及びトラップのブランチ・タイ
プは、ジャンプ・コンディションが真である場合に次マ
イクロアドレスの高位ビットがゼロに強制され、月つ次
の連続するマイクロアドレス〈サブルーチン・ブランチ
の場合)又は現時マイクロアドレス〈トラップの場合)
の何れかがマイクロスタック80にプツシコされること
を除いて、ケースに類似している。
プは、ジャンプ・コンディションが真である場合に次マ
イクロアドレスの高位ビットがゼロに強制され、月つ次
の連続するマイクロアドレス〈サブルーチン・ブランチ
の場合)又は現時マイクロアドレス〈トラップの場合)
の何れかがマイクロスタック80にプツシコされること
を除いて、ケースに類似している。
リターンのブランチ・タイプは、マイクロスタック80
にブツシュされた任意のマイクロアドレスへ復帰づ−る
ために使われる。リターンのブランチ・タイプは条件句
であり、ジャンプ・コンディションが真である場合には
!1に戻るたりである。偽のジャンプ・コンディション
は、次の連続するマイクロアドレスがマイクロシーケン
サ76にJ:って選択されるようにする。
にブツシュされた任意のマイクロアドレスへ復帰づ−る
ために使われる。リターンのブランチ・タイプは条件句
であり、ジャンプ・コンディションが真である場合には
!1に戻るたりである。偽のジャンプ・コンディション
は、次の連続するマイクロアドレスがマイクロシーケン
サ76にJ:って選択されるようにする。
表1はまた、命令レジスタ70中のOPコード又はオペ
ランド指定子のF/l’読を命令するマイクロ命令を制
御論理ユニット60が実行する時に、次マイクロアドレ
スが決定される方法を示す。OPコードの解読に対して
は、もしも特定されたジャンプ・コーディションが偽な
らば、次マイクロアドレスは、解読ROM74から供給
されるアドレスによって決定される。この場合、次マイ
クロアドレスの高位ビットは、ゼ1]にレットされる。
ランド指定子のF/l’読を命令するマイクロ命令を制
御論理ユニット60が実行する時に、次マイクロアドレ
スが決定される方法を示す。OPコードの解読に対して
は、もしも特定されたジャンプ・コーディションが偽な
らば、次マイクロアドレスは、解読ROM74から供給
されるアドレスによって決定される。この場合、次マイ
クロアドレスの高位ビットは、ゼ1]にレットされる。
ただし、もしも特記されたジャンプ・コンディションが
真て゛あるならば、次マイクロアドレスは、完全に、O
RMUX208の4ビツト出力によって決定され、現時
、マイクロアドレスは、マイクロスタック80にブツシ
ュされる。一般に、oPコード解読のフィクロ命令で特
記されるジャンプ・コンディションは、IRrNVAL
[D信号である。結果として、データ・バス・モジコー
ル14が、命令レジスタ70で未だ有効でないOPコー
ドを復号又は解読しようとする場合、命令ブリフェッチ
・ユニット56が追いつくのを待つサブルーチンの存在
する低位マイクロアドレスにトラップが生じる。
真て゛あるならば、次マイクロアドレスは、完全に、O
RMUX208の4ビツト出力によって決定され、現時
、マイクロアドレスは、マイクロスタック80にブツシ
ュされる。一般に、oPコード解読のフィクロ命令で特
記されるジャンプ・コンディションは、IRrNVAL
[D信号である。結果として、データ・バス・モジコー
ル14が、命令レジスタ70で未だ有効でないOPコー
ドを復号又は解読しようとする場合、命令ブリフェッチ
・ユニット56が追いつくのを待つサブルーチンの存在
する低位マイクロアドレスにトラップが生じる。
オペランド指定子解読のマイクロ命令が実行されると、
次マイク[1アドレスは、IRINVΔ1−ID信号及
び解読ROM74から17)REG l5TI三R信月
という2つの信号によって決定され、RIE G I
S 1− IE R信号は、オペランIZ指定子のアド
レッシング・モードが直接であるかどうかを示す。
次マイク[1アドレスは、IRINVΔ1−ID信号及
び解読ROM74から17)REG l5TI三R信月
という2つの信号によって決定され、RIE G I
S 1− IE R信号は、オペランIZ指定子のアド
レッシング・モードが直接であるかどうかを示す。
もしも命令レジスタ(IR)が有効であり、且つモード
が直接であるならば、次の連続するマイクロアドレスが
選択される。もしも命令レジスタ(IR)が有効であり
、且つモードが間接であるならば、マイクロプログラム
は、高位部分がジャンプ・レジスタ212の高位ビット
によって決定され且つ低位部分が解読ROM74からの
マイクロアドレスに等しいアドレスにあるサブルーチン
にジャンプする。ジャンプ・レジスタ 212のアドレ
スは、現時マイクロ命令のナブフィールド[ジャンプ・
アドレス]から府出される。結局、IRIN V A
L D信号が出される場合には、マイクロプログラムは
、○RMUX208の出力〈この場合には、1に等しい
値にレストされる。)によって指定されるアドレスのサ
ブルーチンにトラップする。
が直接であるならば、次の連続するマイクロアドレスが
選択される。もしも命令レジスタ(IR)が有効であり
、且つモードが間接であるならば、マイクロプログラム
は、高位部分がジャンプ・レジスタ212の高位ビット
によって決定され且つ低位部分が解読ROM74からの
マイクロアドレスに等しいアドレスにあるサブルーチン
にジャンプする。ジャンプ・レジスタ 212のアドレ
スは、現時マイクロ命令のナブフィールド[ジャンプ・
アドレス]から府出される。結局、IRIN V A
L D信号が出される場合には、マイクロプログラムは
、○RMUX208の出力〈この場合には、1に等しい
値にレストされる。)によって指定されるアドレスのサ
ブルーチンにトラップする。
表1に示した最後の状況は、パワー・アップ又はパリテ
ィ−・エラーである。この場合、データ・バス・モジュ
ーJし14はゼ日・アドレスのマイクロ命令を実行し始
める。
ィ−・エラーである。この場合、データ・バス・モジュ
ーJし14はゼ日・アドレスのマイクロ命令を実行し始
める。
第4図は、制御論理コニット60をより詳細に示す。制
御論理ユニット6oは、バス100.102、ALU
104、結果レジスタ 106.107、バレル・シッ
ク108及び(!I連のシフト・カウント・レジスタ
11011【ひに結果レジスタ 112、ポインタ・レ
ジスタ 12(1,122、レジスタ・ファイル124
、プロゲラlトカウンタ 126、定数ROM 130
.レジスタ・セーブ・スタック 132、I10ボー1
− 134並びに制御記憶レジスタ 140を含む。
御論理ユニット6oは、バス100.102、ALU
104、結果レジスタ 106.107、バレル・シッ
ク108及び(!I連のシフト・カウント・レジスタ
11011【ひに結果レジスタ 112、ポインタ・レ
ジスタ 12(1,122、レジスタ・ファイル124
、プロゲラlトカウンタ 126、定数ROM 130
.レジスタ・セーブ・スタック 132、I10ボー1
− 134並びに制御記憶レジスタ 140を含む。
制御論理ユニット60にJ、るマイクロ命令の実行は、
くフィクロ命令のデータ・バス制御フィールドが制御記
憶装貿62から制御記憶レジスタ 140にロードされ
た時に始まる。一般に、データ・パス制御フィールドは
、1個のマイクロ0P−1−ドと、2個のマイク[トオ
ペランド指定子を含む。マイクII Q 「)」−ドが
代数演算又は論理演算(例えば、加τ※、論理(・I4
、マスク、比較)を指定する場合、その演算は△LLJ
104によって行なわれる。2つの必要なオペランドは
、バス100及び同102を介して供給さ−れ、演算の
結果は、現時マイク[1命令に含まれるピッl−に従い
、結果レジスタ 106又は同107に置かれる。
くフィクロ命令のデータ・バス制御フィールドが制御記
憶装貿62から制御記憶レジスタ 140にロードされ
た時に始まる。一般に、データ・パス制御フィールドは
、1個のマイクロ0P−1−ドと、2個のマイク[トオ
ペランド指定子を含む。マイクII Q 「)」−ドが
代数演算又は論理演算(例えば、加τ※、論理(・I4
、マスク、比較)を指定する場合、その演算は△LLJ
104によって行なわれる。2つの必要なオペランドは
、バス100及び同102を介して供給さ−れ、演算の
結果は、現時マイク[1命令に含まれるピッl−に従い
、結果レジスタ 106又は同107に置かれる。
バレル・シフタ 108は、シフト演算のために使ねれ
る。シフト・カラン1〜は、シフト・カラン1へ・レジ
スタ 110に収容してもよいし、マイクロ命令中のリ
テラルとして供給してもよい。シフト演算の結果は、結
果レジスタ 112に収容する。
る。シフト・カラン1〜は、シフト・カラン1へ・レジ
スタ 110に収容してもよいし、マイクロ命令中のリ
テラルとして供給してもよい。シフト演算の結果は、結
果レジスタ 112に収容する。
レジスタ・ファイル124は、マク1]レベルのプログ
ラムにアクセス可能な多数の汎用レジスタと、汎用及び
専用の両用のマイクロレベル・レジスタを持つ。汎用レ
ジスタの計1は、以下、レジスタ・ファイル124にお
けるマク「ルベルの汎用レジスタ及びマイクロレベルの
汎用レジスタの両方をさすものと覆る。各レジスタ(ま
、バス100又は同102の何れからも読み出すことが
できるが、バス102からのみ書き込むことができる。
ラムにアクセス可能な多数の汎用レジスタと、汎用及び
専用の両用のマイクロレベル・レジスタを持つ。汎用レ
ジスタの計1は、以下、レジスタ・ファイル124にお
けるマク「ルベルの汎用レジスタ及びマイクロレベルの
汎用レジスタの両方をさすものと覆る。各レジスタ(ま
、バス100又は同102の何れからも読み出すことが
できるが、バス102からのみ書き込むことができる。
レジスタ・ファイル124の各レジスタは、関連する固
有のレジスタ・アドレスを具備し、そのレジスタ・アド
レスは、以下に説明するように、マイクロ命令の実行の
間レジスタを指定するために使われる。
有のレジスタ・アドレスを具備し、そのレジスタ・アド
レスは、以下に説明するように、マイクロ命令の実行の
間レジスタを指定するために使われる。
サイズ・レジスタ88は、制御論理ユニット60によっ
て利用されるデータ・バスの幅を制御するためと、表2
に示すマイクロプログラムのプランヂングを制御するた
めに利用される。このコンピュータ・システムの好まし
い実施例では、データ・パスは32ビット幅まで拡げる
ことができるが、特定のマク1コ命令は、バイト(8ビ
ツト)及びワード(16ビツト)のよう4rより狭いデ
ータ・パスを指定できる。例えば、マク1コ命令は、1
バイトが特定の仮想メEす・アドレスから取り出されて
汎用レジスタ3(即ち、レジスタ・ファイル124中の
この汎用レジスタはレジスタ・アドレス3を採っている
。、)にロードされることを指定することができる。こ
のマクロ命令は、汎用レジスタ3の下位8ビツトにのみ
影響し、高位24ビツトをそのままに放置づ−る。フル
32ビツトのデータ・ブロック↓ま、ロングワードと呼
ぶことにづ゛る。
て利用されるデータ・バスの幅を制御するためと、表2
に示すマイクロプログラムのプランヂングを制御するた
めに利用される。このコンピュータ・システムの好まし
い実施例では、データ・パスは32ビット幅まで拡げる
ことができるが、特定のマク1コ命令は、バイト(8ビ
ツト)及びワード(16ビツト)のよう4rより狭いデ
ータ・パスを指定できる。例えば、マク1コ命令は、1
バイトが特定の仮想メEす・アドレスから取り出されて
汎用レジスタ3(即ち、レジスタ・ファイル124中の
この汎用レジスタはレジスタ・アドレス3を採っている
。、)にロードされることを指定することができる。こ
のマクロ命令は、汎用レジスタ3の下位8ビツトにのみ
影響し、高位24ビツトをそのままに放置づ−る。フル
32ビツトのデータ・ブロック↓ま、ロングワードと呼
ぶことにづ゛る。
サイズ・レジスタ88には、マクロ命令のOPコードが
解読されるときに解読ROM74から直接2どツ1−・
]−ドがロードされる。好ましい実施例で(ま、コーデ
ィング・スキームは、 O・・・・・・バイト ド・・・・・ワード 2・・・・・・不使用 3・・・・・・ロングワード である。即ち、Ol) Tl−ドによって特定されるデ
ータ・バス幅は、マスキングのt、Eめの△l−U演粋
の使用無しに、Hつレジスタのと/Vな移動(move
>、回転又はリフ1ノッシコ無しに、そのOP =1−
ドに対重る仝実行シーグンスの間、制御論理二1ニツ1
〜に(信号5IZEO及びS I Z E 1として)
有効であるにうに作ることができる。
解読されるときに解読ROM74から直接2どツ1−・
]−ドがロードされる。好ましい実施例で(ま、コーデ
ィング・スキームは、 O・・・・・・バイト ド・・・・・ワード 2・・・・・・不使用 3・・・・・・ロングワード である。即ち、Ol) Tl−ドによって特定されるデ
ータ・バス幅は、マスキングのt、Eめの△l−U演粋
の使用無しに、Hつレジスタのと/Vな移動(move
>、回転又はリフ1ノッシコ無しに、そのOP =1−
ドに対重る仝実行シーグンスの間、制御論理二1ニツ1
〜に(信号5IZEO及びS I Z E 1として)
有効であるにうに作ることができる。
1ノイズ・レジスタ88の内容(jl、オペランド指定
子の解読を行なうマイクロ命令を実行するとぎに、改め
られ得る。そのようなマイクロ命令が実行されるとき、
マイクロ命令の二]ンディション・コード/サイズ・フ
ィールドは、そのフィールドの値がゼロ(バイト)、1
(ワード〉又は3(ロングワード)イ【らば、制御記憶
装置62からリーイズ・レジスタ88にロードされる。
子の解読を行なうマイクロ命令を実行するとぎに、改め
られ得る。そのようなマイクロ命令が実行されるとき、
マイクロ命令の二]ンディション・コード/サイズ・フ
ィールドは、そのフィールドの値がゼロ(バイト)、1
(ワード〉又は3(ロングワード)イ【らば、制御記憶
装置62からリーイズ・レジスタ88にロードされる。
もしも値が2ならば、サイズ・レジスタ88は影響を受
けず、先行するOPコードにJ二って特定されるサイズ
をそのままにしておく。
けず、先行するOPコードにJ二って特定されるサイズ
をそのままにしておく。
解読のマイク1]1命令の他に、1ナイズ・レジスタ8
8は、デスティネーション・オペランドとじて1ノイズ
・レジスタを明示的に指定する移動(IIIOVG)マ
イク[l命令によってのみ修正されうる。解読以4のマ
イク1コ命令は、しかしながら、それらのコンディショ
ン・コード/サイズ・フィールドによって実行の間にデ
ータ・バス幅を制御する。AI−L)及びシフ1〜のマ
イクロ命令に対しては、後でコンディション・−]−ド
/サイズのコーディングを説明づ−る。他のマイクロ命
令(即ら、移動、メモリ要求)については、コンディシ
ョン・]−ド/(プイズ・フィールドの]−ディングは
、O・・・・・・バイト ド・・・・・ワード 2・・・・・・サイズ・レジスタを使用3・・・・・・
[1ングワード −Cある。即ら、与えられたマイク[1命令は、自身の
データ・バス幅を指定できるか又は、サイズ・レジスタ
を指定し、それ故、先行する0P71−ド又ta: 7
1ペランド指定子によって指定される幅を使用できるか
のどちらかで゛ある。その結果、サイズ・レジスタ88
の利用にJ:つて1qられる効率は、現在の=1ンビュ
ータ・システムのマイク]]プログラミングでの檗軟性
に何らの対応する損失ももたらさない。
8は、デスティネーション・オペランドとじて1ノイズ
・レジスタを明示的に指定する移動(IIIOVG)マ
イク[l命令によってのみ修正されうる。解読以4のマ
イク1コ命令は、しかしながら、それらのコンディショ
ン・コード/サイズ・フィールドによって実行の間にデ
ータ・バス幅を制御する。AI−L)及びシフ1〜のマ
イクロ命令に対しては、後でコンディション・−]−ド
/サイズのコーディングを説明づ−る。他のマイクロ命
令(即ら、移動、メモリ要求)については、コンディシ
ョン・]−ド/(プイズ・フィールドの]−ディングは
、O・・・・・・バイト ド・・・・・ワード 2・・・・・・サイズ・レジスタを使用3・・・・・・
[1ングワード −Cある。即ら、与えられたマイク[1命令は、自身の
データ・バス幅を指定できるか又は、サイズ・レジスタ
を指定し、それ故、先行する0P71−ド又ta: 7
1ペランド指定子によって指定される幅を使用できるか
のどちらかで゛ある。その結果、サイズ・レジスタ88
の利用にJ:つて1qられる効率は、現在の=1ンビュ
ータ・システムのマイク]]プログラミングでの檗軟性
に何らの対応する損失ももたらさない。
ポインタ・レジスタ 120及び同122は、各々2つ
の機能を奏し得る6ビツ1−・レジスタである。
の機能を奏し得る6ビツ1−・レジスタである。
即ち、ポインタ・レジスタ 120.122は、レジス
タ・ファイル124の特定の汎用レジスタのアドレス〈
即ち、そのレジスタへのポイント)を収容でき、又は、
オペランド指定子から導出されたリテラル値を収容でき
る。ポインタ・レジスタ 120,122は、バス10
0..112から読み取ることができ、バス102から
書ぎ込むことができる。2つのポインタ・レジスタ 1
00,102の利用は、多数のマクロ命令の実行スピー
ドに署しい利益を与える。例えば、汎用レジスタR」及
び同(く2の内容を;111算づるマクロ命令は、結果
を汎用レジスタR2に首くとして、次のようにヨード化
できる。即ち、 01”=1−1− −加算<Add) オペランド指定子1−R1、直接モードオペランド指定
子2−R2、直接モードただし、各オペランド指定子は
、アドレッサ、モード、及び、(上記の如く)レジスタ
のアドレスを収容するレジスタ・フィールド又はリテラ
ルの何れかを14定するモード・フィールドを含む。本
発明のポインタ・レジスタを使用しなければ、このマク
ロ命令に対するマイクロ命令のシーケンスは、次のよう
に7ステツプ必要とする。即ら、1、OPコードを解読 2、−オペランド指定子1を解読 3、R1をT[EMPlに移動 4、オペランド指定子2を解読 5、R2をTEMP2に移動 6、加算−rEMP3=TEMP1 +TEMP2 7、T’EMP3をR2に移動 ここで、TEMPI、TEMP2及びTEMP3は、マ
イク[コレベルの汎用レジスタを意味する。
タ・ファイル124の特定の汎用レジスタのアドレス〈
即ち、そのレジスタへのポイント)を収容でき、又は、
オペランド指定子から導出されたリテラル値を収容でき
る。ポインタ・レジスタ 120,122は、バス10
0..112から読み取ることができ、バス102から
書ぎ込むことができる。2つのポインタ・レジスタ 1
00,102の利用は、多数のマクロ命令の実行スピー
ドに署しい利益を与える。例えば、汎用レジスタR」及
び同(く2の内容を;111算づるマクロ命令は、結果
を汎用レジスタR2に首くとして、次のようにヨード化
できる。即ち、 01”=1−1− −加算<Add) オペランド指定子1−R1、直接モードオペランド指定
子2−R2、直接モードただし、各オペランド指定子は
、アドレッサ、モード、及び、(上記の如く)レジスタ
のアドレスを収容するレジスタ・フィールド又はリテラ
ルの何れかを14定するモード・フィールドを含む。本
発明のポインタ・レジスタを使用しなければ、このマク
ロ命令に対するマイクロ命令のシーケンスは、次のよう
に7ステツプ必要とする。即ら、1、OPコードを解読 2、−オペランド指定子1を解読 3、R1をT[EMPlに移動 4、オペランド指定子2を解読 5、R2をTEMP2に移動 6、加算−rEMP3=TEMP1 +TEMP2 7、T’EMP3をR2に移動 ここで、TEMPI、TEMP2及びTEMP3は、マ
イク[コレベルの汎用レジスタを意味する。
2つのポインタ・レジスタのIJ用は、必要なステップ
数を5に減ら!Io即ち、 1、QP・コードを解あε 2、オペランド指定子1を解読し、R1のアドレスをP
TR1に置く 3.7Iペランド指定子2を解読し、R2のアドレスを
P T’ R2に四く 4、加算T「MP1=@PTR1 +@PTR2 5、TEMPlを@ P 1’ R2に移動ここで、記
号OXは、アドレスがレジスタX中にある記憶場所(即
ち、レジスタ)を示し、PTRl及びPTR2は、ポイ
ンタ・レジスタ 120及び同122を示1゜上記スデ
ッ12及び3に示したように、オペランド指定子のW?
読は、オペランド指定子によって指定されるレジスタの
番号をポインタ・レジスタ 120又は122の一方に
ロードさせる。
数を5に減ら!Io即ち、 1、QP・コードを解あε 2、オペランド指定子1を解読し、R1のアドレスをP
TR1に置く 3.7Iペランド指定子2を解読し、R2のアドレスを
P T’ R2に四く 4、加算T「MP1=@PTR1 +@PTR2 5、TEMPlを@ P 1’ R2に移動ここで、記
号OXは、アドレスがレジスタX中にある記憶場所(即
ち、レジスタ)を示し、PTRl及びPTR2は、ポイ
ンタ・レジスタ 120及び同122を示1゜上記スデ
ッ12及び3に示したように、オペランド指定子のW?
読は、オペランド指定子によって指定されるレジスタの
番号をポインタ・レジスタ 120又は122の一方に
ロードさせる。
ポインタ・レジスタのこの日−ドは、オペランド指定子
によって指定されるアドレッシング・モードに関わりな
く生じる。オペランド指定子がリテラルを収容する揚台
、そのリテラルは同様にポインタ・レジスタにロードさ
れる。全ての場合に、オペランド指定子の解読を実行す
るマイクロ命令の1ビツトは、どのポインタ・レジスタ
〈120又は122)がロードされるかを決定する。第
2図に示すように、ポインタ・レジスタは、命令レジス
タ70から命令レジスタ・バッファ98、バス82、ラ
ッチ86、I10ボート 134及びバス102を通っ
てロードされる。
によって指定されるアドレッシング・モードに関わりな
く生じる。オペランド指定子がリテラルを収容する揚台
、そのリテラルは同様にポインタ・レジスタにロードさ
れる。全ての場合に、オペランド指定子の解読を実行す
るマイクロ命令の1ビツトは、どのポインタ・レジスタ
〈120又は122)がロードされるかを決定する。第
2図に示すように、ポインタ・レジスタは、命令レジス
タ70から命令レジスタ・バッファ98、バス82、ラ
ッチ86、I10ボート 134及びバス102を通っ
てロードされる。
上記の第2の例のステップ4及び5における加算のマイ
クロ命令及び移動のマイクロ命令は、ポインタ・レジス
タを使ってレジスタR1及び同R2を間接的にアドレス
する。そのようなアドレッシング方法を実施するため、
2つのレジスタ・アドレス、即ち直接アドレス及び間接
アドレスがポインタ・1ノジスタの各々に割当てられる
。ポインタ・レジスタの直接アドレスは、レジスタ・フ
ァイル124のレジスタのアドレスに全く類似しており
、レジスタの内容を特定するために利用される。
クロ命令及び移動のマイクロ命令は、ポインタ・レジス
タを使ってレジスタR1及び同R2を間接的にアドレス
する。そのようなアドレッシング方法を実施するため、
2つのレジスタ・アドレス、即ち直接アドレス及び間接
アドレスがポインタ・1ノジスタの各々に割当てられる
。ポインタ・レジスタの直接アドレスは、レジスタ・フ
ァイル124のレジスタのアドレスに全く類似しており
、レジスタの内容を特定するために利用される。
例えば、第1及び第2のマイクロ・オペランド指定子が
レジスタ・ファイル124中のアドレスが3及び4であ
るレジスタを指定するMOVO3,4というようなマイ
クロ命令では、その結果として、レジスタ3の内容がレ
ジスタ4に移動する。ポインタ・レジスタ 120及び
同 122は、同じ結果を達成する引責しIこ一般的に
より効率的な方法を与える。各ポインタ・レジスタには
、任意のレジスタの直接アドレスとはycなる固有の間
接アドレスが割当てられる。間接アドレスがマイクロ・
オペランド指定子によって指定されると、実際にアクレ
スされるレジスタは、間接的にアドレスされたポインタ
・レジスタの内容によって決定される。例えば、もしも
ポインタ・レジスタ 120及び122が、54及び5
5という間接アドレスを割当てられ、且つ数値3及び4
を収容していたとすると、マイクロ命令Move 54
.55は、Mava 3 、4と等価である。
レジスタ・ファイル124中のアドレスが3及び4であ
るレジスタを指定するMOVO3,4というようなマイ
クロ命令では、その結果として、レジスタ3の内容がレ
ジスタ4に移動する。ポインタ・レジスタ 120及び
同 122は、同じ結果を達成する引責しIこ一般的に
より効率的な方法を与える。各ポインタ・レジスタには
、任意のレジスタの直接アドレスとはycなる固有の間
接アドレスが割当てられる。間接アドレスがマイクロ・
オペランド指定子によって指定されると、実際にアクレ
スされるレジスタは、間接的にアドレスされたポインタ
・レジスタの内容によって決定される。例えば、もしも
ポインタ・レジスタ 120及び122が、54及び5
5という間接アドレスを割当てられ、且つ数値3及び4
を収容していたとすると、マイクロ命令Move 54
.55は、Mava 3 、4と等価である。
プログラム・カウンタ 126は、実行されるべき次の
マクロ命令のアドレスを収容づ−るレジスタである。ポ
インタ・レジスタ 120.122及びレジスタ・ファ
イル124中のレジスタと同様に、プログラム・カウン
タ 126もバス100又は同102の何れがから読み
出しでき、バス102から書き込みできる。
マクロ命令のアドレスを収容づ−るレジスタである。ポ
インタ・レジスタ 120.122及びレジスタ・ファ
イル124中のレジスタと同様に、プログラム・カウン
タ 126もバス100又は同102の何れがから読み
出しでき、バス102から書き込みできる。
プログラム・カウンタ 126は、次のいずれかが生じ
る時に自動的に、1.2又は4だけインクリメン1−さ
れる。
る時に自動的に、1.2又は4だけインクリメン1−さ
れる。
(1)1個のOf) l1l−ド解読マイクロ命令が実
行される時、 (2)オペランド指定子解読マイクロ命令が実行される
時、 (3) 川口)マイクロ命令が、1つのマイクロ命令オ
ペランドの記憶場所として命令 レジスタ70を指定する口)、 (4) マクロ命令の命令ストリームからのデータの再
生を支持するマイクロ命令が 実行される時、 ケース(1)及び(2)については既に説明した。プロ
グラム・カウンタ 126は、プログラム・カウンタ
12G中のアドレスが新しいマクロ命令のバイトの仮想
アドレスに対応するように、新しいマクロ命令のバイト
が命令レジスタ70から計数されたときには何時でも1
だけインクリメントされる。ケース(3)の例としては
、マクロ命令ストリーム中の1パイ1〜がリテラル・デ
ータを含む]易合である。例えば、成るタイプのオペラ
ンド指定子は、ベース・アドレスを収容するレジスタと
、イのレジスタ中に発見されるベース・アドレスに加算
されるべぎ固定オフセットとを指定づ−ることによって
オペランドのアドレスを特定σる。この状況ではオペラ
ンド指定子は2バイトからなり、第1のバイトはレジス
タ・アドレス(例えば、レジスタ2)及びアドレッシン
グ・モードを指定し、第2のバイトは、固定オフセット
(111ち、リテラル)を収容する。そのよう1.7副
ペランドをアクセスするマイクロ命令は、オペランド指
定子の第1バイトを解読して値2(レジスタ・アドレス
)をポインタ・レジスタ 120にfffi <ことに
よって始まる。次のマイクロ命令は、命令レジスタ70
に収容されたリテラルに、ポインタ・レジスタ 120
によって指定される値を加算ザる。このマイクロ命令は
、命令レジスタ70に割当てられた固有のレジスタ・ア
ドレスを指定することによって命令レジスタ70を参照
する。リテラルは、命令レジスタ70から命令レジスタ
・バッファ98、バス82、ラッチ86、バス84、I
10ポーI〜 134及びバス102を通って、ALU
104に達する。オペランドとして命令レジスタ70の
アドレスを指定するhl算マイクロ命令の実行は、ブ[
コグラム・カウンタ 120を1だ(づインクリメン1
〜させる。
行される時、 (2)オペランド指定子解読マイクロ命令が実行される
時、 (3) 川口)マイクロ命令が、1つのマイクロ命令オ
ペランドの記憶場所として命令 レジスタ70を指定する口)、 (4) マクロ命令の命令ストリームからのデータの再
生を支持するマイクロ命令が 実行される時、 ケース(1)及び(2)については既に説明した。プロ
グラム・カウンタ 126は、プログラム・カウンタ
12G中のアドレスが新しいマクロ命令のバイトの仮想
アドレスに対応するように、新しいマクロ命令のバイト
が命令レジスタ70から計数されたときには何時でも1
だけインクリメントされる。ケース(3)の例としては
、マクロ命令ストリーム中の1パイ1〜がリテラル・デ
ータを含む]易合である。例えば、成るタイプのオペラ
ンド指定子は、ベース・アドレスを収容するレジスタと
、イのレジスタ中に発見されるベース・アドレスに加算
されるべぎ固定オフセットとを指定づ−ることによって
オペランドのアドレスを特定σる。この状況ではオペラ
ンド指定子は2バイトからなり、第1のバイトはレジス
タ・アドレス(例えば、レジスタ2)及びアドレッシン
グ・モードを指定し、第2のバイトは、固定オフセット
(111ち、リテラル)を収容する。そのよう1.7副
ペランドをアクセスするマイクロ命令は、オペランド指
定子の第1バイトを解読して値2(レジスタ・アドレス
)をポインタ・レジスタ 120にfffi <ことに
よって始まる。次のマイクロ命令は、命令レジスタ70
に収容されたリテラルに、ポインタ・レジスタ 120
によって指定される値を加算ザる。このマイクロ命令は
、命令レジスタ70に割当てられた固有のレジスタ・ア
ドレスを指定することによって命令レジスタ70を参照
する。リテラルは、命令レジスタ70から命令レジスタ
・バッファ98、バス82、ラッチ86、バス84、I
10ポーI〜 134及びバス102を通って、ALU
104に達する。オペランドとして命令レジスタ70の
アドレスを指定するhl算マイクロ命令の実行は、ブ[
コグラム・カウンタ 120を1だ(づインクリメン1
〜させる。
−1−記のケース(4)は、命令ストリーム・メ王り要
求と呼ばれる。ぞのようなマイクロ命令が実行されると
ぎ、制御記憶装置62からメモリ制御バス16を介して
メモリ制御モジュール12に制御信号が送られる。1同
■、冒こ、プログラム・ノJウンタ 126のインクリ
メン1−されでいない内容が、バス102及び110ボ
ー1− 134を介してバス84上に送り出され、そこ
からメモリ・データ・バス18を介してメモリ制御モジ
コール12に送り出される。プログラム・カウンタ 1
2Gはそれから、命令ストリーム・メモリ要求のマイク
ロ命令が1パイ1〜.1ワード又は10ングワードを指
定するかどうかに従い、1゜2又は4だりインクリメン
1−される。メモリ制御モジュール12(第2図)1−
Cは、命令ブリフェッチ・ユニツ1へ56が、マクI]
命令ストリームのバイトで満たされたブリフェッチ・バ
ッファを紐持する。命令ストリーム・メモリ要求はまず
、ブリフェッチ・バッファをクリアし、翻訳バッファ/
キャッシュ40又はメモリ・アレイ22から1パイ1〜
.1ワード又は10ングワードを読み、結束データをメ
モリ・データ・バス18を介してデータ・バス・モジュ
ール14に送る。命令ブリフ−「ツヂ・ユニッ1−56
は、データ・バス・モジコール14に送られるデータを
伴うマク[1命令ストリーム中の次のバイトでブリフェ
ッチ・バッファを再充填する。
求と呼ばれる。ぞのようなマイクロ命令が実行されると
ぎ、制御記憶装置62からメモリ制御バス16を介して
メモリ制御モジュール12に制御信号が送られる。1同
■、冒こ、プログラム・ノJウンタ 126のインクリ
メン1−されでいない内容が、バス102及び110ボ
ー1− 134を介してバス84上に送り出され、そこ
からメモリ・データ・バス18を介してメモリ制御モジ
コール12に送り出される。プログラム・カウンタ 1
2Gはそれから、命令ストリーム・メモリ要求のマイク
ロ命令が1パイ1〜.1ワード又は10ングワードを指
定するかどうかに従い、1゜2又は4だりインクリメン
1−される。メモリ制御モジュール12(第2図)1−
Cは、命令ブリフェッチ・ユニツ1へ56が、マクI]
命令ストリームのバイトで満たされたブリフェッチ・バ
ッファを紐持する。命令ストリーム・メモリ要求はまず
、ブリフェッチ・バッファをクリアし、翻訳バッファ/
キャッシュ40又はメモリ・アレイ22から1パイ1〜
.1ワード又は10ングワードを読み、結束データをメ
モリ・データ・バス18を介してデータ・バス・モジュ
ール14に送る。命令ブリフ−「ツヂ・ユニッ1−56
は、データ・バス・モジコール14に送られるデータを
伴うマク[1命令ストリーム中の次のバイトでブリフェ
ッチ・バッファを再充填する。
レジスタ・レープ・スタック 132は、指定レジスタ
の内容を一時的に収容するために使われるLIFOスタ
ックである。スフツク上の各エントリは、レジスタの内
容に、ぞのレジスタのアドレス(番号)を加えたものか
らなる。レジスタ・レープ・スタックの利用法の説明例
としては、自動インクリメントのアドレッシング・モー
ドを指定するオペランドの解読がある。ぞのようなモー
ドでは、指定レジスタの内容はまず、オペランドにアク
セスするためのアドレスとして利用され、そのレジスタ
は、それから自動的に1,2又は4だ(プインクリメン
トされる。オート・インクリメント・モードのオペラン
ド指定子が解読されるとき、レジスタのインクリメント
されない内容は、自動的にレジスタ・レープ・スタック
132にブツシュされる。もしも試みられたメモリ・
アクセスがJラー状態に終わると、そのレジスタは、ス
タックをポツプすることによって先に存在した状態に戻
される。プッシコ動作は現時マイクロ命令によって制御
され、そのマイクロ命令は、ブツシュを起こすべぎか否
かを決定する1ビツトを含む。もしもブツシュが生じる
べきときには、マイクロ・オペランド指定子の1つは、
レジスタのアドレスを含む。
の内容を一時的に収容するために使われるLIFOスタ
ックである。スフツク上の各エントリは、レジスタの内
容に、ぞのレジスタのアドレス(番号)を加えたものか
らなる。レジスタ・レープ・スタックの利用法の説明例
としては、自動インクリメントのアドレッシング・モー
ドを指定するオペランドの解読がある。ぞのようなモー
ドでは、指定レジスタの内容はまず、オペランドにアク
セスするためのアドレスとして利用され、そのレジスタ
は、それから自動的に1,2又は4だ(プインクリメン
トされる。オート・インクリメント・モードのオペラン
ド指定子が解読されるとき、レジスタのインクリメント
されない内容は、自動的にレジスタ・レープ・スタック
132にブツシュされる。もしも試みられたメモリ・
アクセスがJラー状態に終わると、そのレジスタは、ス
タックをポツプすることによって先に存在した状態に戻
される。プッシコ動作は現時マイクロ命令によって制御
され、そのマイクロ命令は、ブツシュを起こすべぎか否
かを決定する1ビツトを含む。もしもブツシュが生じる
べきときには、マイクロ・オペランド指定子の1つは、
レジスタのアドレスを含む。
=lンディション・コード論理ユニット90は、2セツ
トのコンディション・]−ド、即ち、マイクロプログラ
ム・レベル(△L U )のコンディション・コード及
びマクロプログラム・レベル(PSl−)のコンディシ
ョン・コードを収容及び制御するために使われる。4個
のコンディションが各レベルで与えられる。
トのコンディション・]−ド、即ち、マイクロプログラ
ム・レベル(△L U )のコンディション・コード及
びマクロプログラム・レベル(PSl−)のコンディシ
ョン・コードを収容及び制御するために使われる。4個
のコンディションが各レベルで与えられる。
N・・・・・・ネガティブ
Z・・・・・・ゼO
■・・・・・・オーバーフロー
C・・・・・・キ1νり一
△LUコンディション・コードは制御論理コニット60
によって実行された最後のマイクロ命令の結果を反映し
、それは、ALtJコンディション・コードがロードさ
れるべぎ:Iンデイション・コード/サイズ・フィール
ドで特定する。ALUコンディジ三1ン・コードは、J
UMP MUX 206(第3図)への4個の入力から
なる。ALUコンディション・]−ドはそれ故、表1に
示したにうに、マイクロ命令によってジャンプ制御信号
として利用され得る。PSI−コンディション・コード
は、マクロプログラム・レベルに有効なコンディション
・コードであり、マクロブランチを起こすべきか否かを
決定するためにマクロプログラムによつ(利用される。
によって実行された最後のマイクロ命令の結果を反映し
、それは、ALtJコンディション・コードがロードさ
れるべぎ:Iンデイション・コード/サイズ・フィール
ドで特定する。ALUコンディジ三1ン・コードは、J
UMP MUX 206(第3図)への4個の入力から
なる。ALUコンディション・]−ドはそれ故、表1に
示したにうに、マイクロ命令によってジャンプ制御信号
として利用され得る。PSI−コンディション・コード
は、マクロプログラム・レベルに有効なコンディション
・コードであり、マクロブランチを起こすべきか否かを
決定するためにマクロプログラムによつ(利用される。
OPコードが解読ROM 74によって解読されるとぎ
、2ピッl−のコンディション・コード・クラス信号が
作り出され、コンディション・コード論理コニット90
中のコンディション・コード・クラス・レジスタ(図示
せず)に直接送り込まれる。
、2ピッl−のコンディション・コード・クラス信号が
作り出され、コンディション・コード論理コニット90
中のコンディション・コード・クラス・レジスタ(図示
せず)に直接送り込まれる。
]ンディシ3ン・]−ド・クラス・レジスタの内容は、
ΔL Uコードが下記の如<PSII−ドにどのように
転写されるかを決定する。
ΔL Uコードが下記の如<PSII−ドにどのように
転写されるかを決定する。
コンディション嗜
コード・クラス・ クラス
レジスタ
O1論理 ALU NをPSL Nへ
ALU 7をPSL Zへ
ALUVをPSL Vへ
ALIJ CをpsL 、cへ
1、代数 ALU NをPSL Nへ
ALU ZをPSI Zへ
ALUVをPSI Vへ
ALLJ CをPSL Cへ
2、比較 ALU NをPsl Nへ
△L″U ZをPSL Zへ
1)SLVをクリア
AI−、UCをPSI−Cへ
3、浮動小数点 △1−() NをPsi NへΔ[U
7をPSL Zへ AlUVをPSI−Vへ PSL Cをクリア 与えられたマイクロ命令にJ、るコンディション・コー
ドの実際のセツティングは、そのマイクロ命令のコンデ
ィション・]−ド/サイズ・フィールドによって決定さ
れる。先に説明したように、成るタイプのマイクロ命令
(例えば、移動、メモリ要求、解読)は、データ・パス
幅を指定するためにコンディション・]−ド/サイズ・
フィールドを利用し、これらのマイクロ命令では、コン
ディション・コードは決してレストされない。他のマイ
クロ命令(例えば、加算、論理積、シフト)では、コン
ディション・コード/サイズ・フィールドは、データ・
パス幅及びコンディション・コ−ドのレッティングを次
のように制御する。即ち、フィールド値 0、ロングワード コンディション・コードは影響なし 1、ロングワード A L LJコンディション・コー
ドをセット 2、ロングワード △LU及びPSLのコンディション
・コードをセラ]へ 3、サイズ・レジ A L U及びPSI−のコンディ
スタ毎 ジョン・コードをセット このようなマイクロ命令では、コンディション・コード
/サイズ・フィールドの内容は、制御記憶装置62から
CC論理ユニット90に直接法られる。
7をPSL Zへ AlUVをPSI−Vへ PSL Cをクリア 与えられたマイクロ命令にJ、るコンディション・コー
ドの実際のセツティングは、そのマイクロ命令のコンデ
ィション・]−ド/サイズ・フィールドによって決定さ
れる。先に説明したように、成るタイプのマイクロ命令
(例えば、移動、メモリ要求、解読)は、データ・パス
幅を指定するためにコンディション・]−ド/サイズ・
フィールドを利用し、これらのマイクロ命令では、コン
ディション・コードは決してレストされない。他のマイ
クロ命令(例えば、加算、論理積、シフト)では、コン
ディション・コード/サイズ・フィールドは、データ・
パス幅及びコンディション・コ−ドのレッティングを次
のように制御する。即ち、フィールド値 0、ロングワード コンディション・コードは影響なし 1、ロングワード A L LJコンディション・コー
ドをセット 2、ロングワード △LU及びPSLのコンディション
・コードをセラ]へ 3、サイズ・レジ A L U及びPSI−のコンディ
スタ毎 ジョン・コードをセット このようなマイクロ命令では、コンディション・コード
/サイズ・フィールドの内容は、制御記憶装置62から
CC論理ユニット90に直接法られる。
第1図は、本発明の中央処理装置を組み込んだ一]ンビ
コータ・システムのブロック・ダイアグラムである。第
2図は、本発明の中央処理装置の一実施例のブロック・
ダイアグラムである。第3図は、本発明の中央処理装置
と共に使用するマイク1]シーケン4ブのブロック・ダ
イアグラムである。 第4図は、本発明の中央処理装置の制御論理ユニットを
訂細に示すブロック・ダイアグラムである。 10・・・CPU 12・・・メモリ制御モジュール
14・・・データ・バス・モジュール 16・・・メモ
リ制御バス18・・・メモリ・データ・バス 20・・
・システム・バス 22・・・メモリ・アレイ 24・
・・コンソール・ターミナル 28・・・メモリ制御コ
マンド 30・・・送受信器32・・・バス 34・・
・バス 40・・・翻訳バッファ/キャッシュ 42・
・・物理アドレス・レジスタ 44・・・システム・バ
ス・インターフェース 48・・・マージ/回転ユニッ
ト 5o・・・マイクロシーケンサ/制御記憶装首 j
)2・・・バス制御装置 56・・・命令プリフェッチ
・ユニット 60制御論1!11コニツト 62・・・
fli!I御記憶装置 64・・・バス・ラッチ 70
・・・命令レジスタ 74・・・解読ROM 76・・
・マイク1]ジークン1ノ 78・・・制御記憶アドレ
ス・レジスタ 80・・・マイクロスタック 82・・
・バス 84・・・バス 86・・・ラッチ 88・・
・サイズ・レジスタ 90・・・CCB埋ユニット 9
2・・・インデックス・レジスタ 94・・・コンソー
ル・インターフェース 96・・・割込制御論理]−ニ
ット 9B・・・命令レジスタ・バッファ 100・・
・バス 102・・・バス104・・・△LLJ 10
G・・・結果レジスタ 107・・・結果レジスタ 1
08・・・バレル・シフタ 110・・・シフト、カラ
ン1〜・レジスタ 112・・・結果レジスタ120・
・・ポインタ・レジスタ 122・・・ポインタ・レジ
スタ 124・・・レジスタ・ファイル 126・・・
プログラム・カウンタ 130・・・定数ROM 13
2・・・レジスタ・セーブ・スタック 134・・用/
○ボート140・・・制御記憶レジスタ 200・・・
マルチプレクサ(MLJX) 201・・・ページ・レ
ジスタ 202・・・マイクロプログラム・カウンタ
204・・・ORゲート 206・・・ JUMP M
tJX 208・・・ ORMU×210・・・バス
212・・・ツヤンプ・レジスタ214・・・条件句デ
クレメンタ 特許出願人 ディジタル イクイップメント コーポレイション 第1頁の続き 0発 明 者 ピータ−チャールズ アメリシュノーア
エヌイ 0発 明 者 ロバート ティー、シ アメリョート
ル、ニ ー・ エ 力合衆国、98052 ワシットン州、レッドモンド、
− セブンス コート 23629 力合衆国、98072 ワシントン州、ウッドインビヌ
イー ワンハンドレッド・アンド・ナインテイイトス
ストリート 15523 丁続補jl’、’ f:Uf 昭和59年10月121] 1jY許庁ト官 志 賀 学 殿 くf−2ρr12)/ 1、事イ′1の表示 昭(■59イ「l07111EI
(」提出の特W[願2、発明の名称 ディジクル・]]
ンビ]−タ用中央処理装置3?11i正イ+ 117)
li 事1′1どの関係 特Fl′l出願人 (1所 アフリ13合衆国、01754 マサチューセ
ッツ州、メイナード、メイン ストリート 146名称
ディジクル イクイツブメン1へ コーボレぞジョン
代表者 (氏名は)Dっで補充づる。)4、代FJj人 中51Σ都)ji’li’il”G I杓゛1〜合二丁
目14番1呂5、補正の令の口r′:1 自発補正 6、補正の対象 酎i3に添付した明細用の発明の詳細
な説明の(閉[補正の内容] (1〉 願書に添付した明@和の第50頁第11(10
に「を(1′う」とあるのを、 に続く と?111正しjづ。 以」二 手 続 ン山 正 −コ 昭和59年11月70 1”■9′1庁長官 志 賀 学 殿 1、事1′Fの表示 11r1和59年特許願第204201号2、発明の名
称 ディジタル・コンピュータ用中央処理装置3、ンIIi
正をする者 )ii iqとの関係 特許出願人 11所 アメリカ合衆国、01754 マサチューセッ
ツ州、メイナード、メイン ストリー1〜146名称
ディジクル イクイップメント コーポレイション代表
者 (追って補充づる。) 4、代理人 東京都新宿区下落合二丁目14番1号 5、補正命令の口f」 自発補正 6、補正の対象 願1月に添付した明細書の発明の詳細
な説明のiil、u7、補正の内容 別紙の通り [補正の内容] (1) 願書に添f=J t、た明細書の第43頁第3
行7”J金弟4行に[アドレッサ、モード、及び、]と
あるのを、 アドレッシング・モードを指定するモード・フィールド
と、 と補正し、 (2〉 同第43頁第6行目に「何れかを特定するモー
ド・フィールドを含む。」とあるのを、何れかどを含む
。 と補正し、 (3)同第50頁第11行目に「次の」とあるのを、次
の及びそれ以降の とJli正し、 (・l)同第50頁第16行目に「内容に」とあるのを
、内容と と補正し、 (5)同第50頁第17行目に「を加えたもの」とある
のを、 と どj重重します。 以 上
コータ・システムのブロック・ダイアグラムである。第
2図は、本発明の中央処理装置の一実施例のブロック・
ダイアグラムである。第3図は、本発明の中央処理装置
と共に使用するマイク1]シーケン4ブのブロック・ダ
イアグラムである。 第4図は、本発明の中央処理装置の制御論理ユニットを
訂細に示すブロック・ダイアグラムである。 10・・・CPU 12・・・メモリ制御モジュール
14・・・データ・バス・モジュール 16・・・メモ
リ制御バス18・・・メモリ・データ・バス 20・・
・システム・バス 22・・・メモリ・アレイ 24・
・・コンソール・ターミナル 28・・・メモリ制御コ
マンド 30・・・送受信器32・・・バス 34・・
・バス 40・・・翻訳バッファ/キャッシュ 42・
・・物理アドレス・レジスタ 44・・・システム・バ
ス・インターフェース 48・・・マージ/回転ユニッ
ト 5o・・・マイクロシーケンサ/制御記憶装首 j
)2・・・バス制御装置 56・・・命令プリフェッチ
・ユニット 60制御論1!11コニツト 62・・・
fli!I御記憶装置 64・・・バス・ラッチ 70
・・・命令レジスタ 74・・・解読ROM 76・・
・マイク1]ジークン1ノ 78・・・制御記憶アドレ
ス・レジスタ 80・・・マイクロスタック 82・・
・バス 84・・・バス 86・・・ラッチ 88・・
・サイズ・レジスタ 90・・・CCB埋ユニット 9
2・・・インデックス・レジスタ 94・・・コンソー
ル・インターフェース 96・・・割込制御論理]−ニ
ット 9B・・・命令レジスタ・バッファ 100・・
・バス 102・・・バス104・・・△LLJ 10
G・・・結果レジスタ 107・・・結果レジスタ 1
08・・・バレル・シフタ 110・・・シフト、カラ
ン1〜・レジスタ 112・・・結果レジスタ120・
・・ポインタ・レジスタ 122・・・ポインタ・レジ
スタ 124・・・レジスタ・ファイル 126・・・
プログラム・カウンタ 130・・・定数ROM 13
2・・・レジスタ・セーブ・スタック 134・・用/
○ボート140・・・制御記憶レジスタ 200・・・
マルチプレクサ(MLJX) 201・・・ページ・レ
ジスタ 202・・・マイクロプログラム・カウンタ
204・・・ORゲート 206・・・ JUMP M
tJX 208・・・ ORMU×210・・・バス
212・・・ツヤンプ・レジスタ214・・・条件句デ
クレメンタ 特許出願人 ディジタル イクイップメント コーポレイション 第1頁の続き 0発 明 者 ピータ−チャールズ アメリシュノーア
エヌイ 0発 明 者 ロバート ティー、シ アメリョート
ル、ニ ー・ エ 力合衆国、98052 ワシットン州、レッドモンド、
− セブンス コート 23629 力合衆国、98072 ワシントン州、ウッドインビヌ
イー ワンハンドレッド・アンド・ナインテイイトス
ストリート 15523 丁続補jl’、’ f:Uf 昭和59年10月121] 1jY許庁ト官 志 賀 学 殿 くf−2ρr12)/ 1、事イ′1の表示 昭(■59イ「l07111EI
(」提出の特W[願2、発明の名称 ディジクル・]]
ンビ]−タ用中央処理装置3?11i正イ+ 117)
li 事1′1どの関係 特Fl′l出願人 (1所 アフリ13合衆国、01754 マサチューセ
ッツ州、メイナード、メイン ストリート 146名称
ディジクル イクイツブメン1へ コーボレぞジョン
代表者 (氏名は)Dっで補充づる。)4、代FJj人 中51Σ都)ji’li’il”G I杓゛1〜合二丁
目14番1呂5、補正の令の口r′:1 自発補正 6、補正の対象 酎i3に添付した明細用の発明の詳細
な説明の(閉[補正の内容] (1〉 願書に添付した明@和の第50頁第11(10
に「を(1′う」とあるのを、 に続く と?111正しjづ。 以」二 手 続 ン山 正 −コ 昭和59年11月70 1”■9′1庁長官 志 賀 学 殿 1、事1′Fの表示 11r1和59年特許願第204201号2、発明の名
称 ディジタル・コンピュータ用中央処理装置3、ンIIi
正をする者 )ii iqとの関係 特許出願人 11所 アメリカ合衆国、01754 マサチューセッ
ツ州、メイナード、メイン ストリー1〜146名称
ディジクル イクイップメント コーポレイション代表
者 (追って補充づる。) 4、代理人 東京都新宿区下落合二丁目14番1号 5、補正命令の口f」 自発補正 6、補正の対象 願1月に添付した明細書の発明の詳細
な説明のiil、u7、補正の内容 別紙の通り [補正の内容] (1) 願書に添f=J t、た明細書の第43頁第3
行7”J金弟4行に[アドレッサ、モード、及び、]と
あるのを、 アドレッシング・モードを指定するモード・フィールド
と、 と補正し、 (2〉 同第43頁第6行目に「何れかを特定するモー
ド・フィールドを含む。」とあるのを、何れかどを含む
。 と補正し、 (3)同第50頁第11行目に「次の」とあるのを、次
の及びそれ以降の とJli正し、 (・l)同第50頁第16行目に「内容に」とあるのを
、内容と と補正し、 (5)同第50頁第17行目に「を加えたもの」とある
のを、 と どj重重します。 以 上
Claims (1)
- 【特許請求の範囲】 (1)一連のマクロ命令を解読・実行すべく動作するコ
ンピュータ用中央処理装置であって、アドレス・データ
を含むデータの一時記憶用の複数の汎用レジ込りであっ
て、それぞれ関連する固有のレジスタ・アドレスを具備
するものと、複数のポインタ・レジスタと、 指定の汎用レジスタを参照するマクロ命令の解読に応答
して動作し、当該ポインタ・レジスタの1つに当該指定
の汎用レジスタのレジスタ・アドレスをロードするロー
ド手段と、 当該マクロ命令の実行に応答し、当該汎用レジスタを選
択するためのアドレスとして当該1つのポインタ・レジ
スタの内容を使うことによって、当該指定の汎用レジス
タをアクセスするアクセス手段 とからなることを特徴とする中央処理装置。 (2)指定の汎用レジスタを参照づる前記マクロ命令が
、1個の演綽コード及び1 (liaのオペランド指定
子からなり、当該オペランド指定子は、汎用レジスタの
レジスタ・アドレスを収容づるレジスタ・フィールドを
具備し、前記ロード手段は、前記マクロ命令のV!読に
応答して動作して、前記1つのポインタ・レジスタに当
該オペランド指定子のレジスタ・フィールドをロードす
ることを特徴とする特許請求の範囲第(1)項に記載の
中央処理装置。 (3)一連のマクロ命令を解読・実行すべく動作するコ
ンピュータ用中央処理装置であって、アドレス・データ
を含むデータの一時記憶用の複数の汎用レジスタであっ
て、それぞれ関連する固有のレジスタ・アドレスを具備
づるものと、複数のポインタ・レジスタと、 2個の汎用レジスタを参照するマクロ命令のwl読に応
答して動作lノ、当該ポインタ・レジスタの2個に当該
2個の汎用レジスタの各レジスタ・アドレスをロードす
るロード手段と、 当該マクロ命令の実行に応答し、当該2個のtL用レジ
スタを選択づるためのアドレスとして当該2個のポイン
タ・レジスタの各内容を使うことによって、当該2個の
汎用レジスタにアクセスするアクゼス手段 とからなることを特徴どする中央処理装置。 (’I) 2個の汎用レジスタを参照する前記マクロ命
令が、1個の演算コード及び2個のオペランド指定子か
らなり、各オペランド指定子は、汎用レジスタのレジス
タ・アドレスを収容するレジスタ・フィールドを具備し
、前記ロード手段は、前記マクロ命令の解読に応答して
動作して、前記2個のポインタ・レジスタに当該オペラ
ンド指定子の各レジスタ・フィールドをロードすること
を特徴とする特許請求の範囲第(3)項に記載の中央処
理装置。 (5) 前記【]−ド手段が、更に、リテラル値を収容
するマクロ命令の解読に応答して動作し、前記ポインタ
・レジスタの1つにそのリテラル値をロードすることを
特徴とする特許請求の範囲第(3)項又は第(4〉項に
記載の中央処理装置。 (6) それぞれ演算コードを含む一連のマクロ命令を
解読・実行覆べく動作するコンピュータ用中央処理装置
であって、 (a )サイズ・レジスタと、 (b)演算コードが解読されるときに動作する手段であ
って、解読されるべき演算コードによって指定されるデ
ータのサイズを示すサイズ・コードを当該リーイズ・レ
ジスタにロードするものを含み、マクロ命令を解読する
解読手段と、(c)(i)−Tれぞれ二進信号を運び得
る複数の並列データ・パス・エレメント、 及び (11)各マクロ命令を実行するために使われるデータ
・パス・エレメントの 数を選択するサイズ選択手段であって、所定のマイクロ
命令の実行の間に動作 して、当該lサイズ・レジスタ中のサイズ・コードに基
づきデータ・パス・エ レメントの数を選択するもの を貝1! Ll、各マクロ命令の解読に応答して一連の
マイクロ命令を実行すべくなした制御論理ユニツ1〜 とからなることを特徴とツる中央処理装置。 (7) 成るマクロ命令は、マクロ命令が作用ずべきデ
ータを同定する1又は2以−1−のオペランド指定子を
含み、本中央処理装置は、まず演牌コードを解読し、次
に連続的に1又は2以上のオペランド指定子を解読号る
ことによって、当該成るマクロ命令を解読Jべく動作し
、本中央処理装置は、オペランド指定子が解読されると
ぎに動作しでサイズ・レジスタにサイズ・コードを選択
的に1]−ドする手段を含むことを特徴とする特許請求
のlp囲第〈6)項に記載の中央処理装置。 <8) 各マクロ命令は(サイズ・フィールドを含み、
前記リーイス′選択手段は、各マイクロ命令の実行の間
に動作して、1)a記すイズ・コード及び当該サイズ・
ノイールドのいずれか一方に阜づぎデータ・パス・ニレ
メン1〜の数を選択し、その選択は当該サイズ・フィー
ルドの値に依存刀ることを特徴とする請求 (9) システム・パス及び中央メモリ・コーニツ1〜
を具備するデータ・プロレス・システムにおりる中央処
理装置であって、 (a )当該中央メモリ・コニットに収容された演算コ
ード及び1又は2以丁のオペランド指定子からなる可変
長のマクロ命令にアクレスサるため、メモリ制御:コマ
ンド及び仮想メモリ・アドレスを発行り−るマクロ命令
実?]手段であって、そのアクセスは当該メモリ制御コ
マンドに応答して選択されたマイク[」ブI]グラムに
従って生じ、(i)1セツトーのマイクロ命令の1つの
マイクロ・アドレス、当該マクロ命 令が作用すべきデータのバイト長を示 ザサイズ・’TI一ド及びマイクロ命令のコンディジ1
ン・コードのマクロ命令 の二{ンティシ玉1ン・−]一ドへの転写を指定するコ
ンディション・コード・ク ラス・コードを発生すべく、当該マク ロ命令の演偉]一ドを解読すると共に、当該マクロ命令
が使用すべきデータ又 【まデータ・アドレスの何れか、及び多数のアドレッシ
ング・モードの任意の 1つを示すアドレッシング・モード指 定子を発行すべく、当該Aペランド指 定子を解読する解読手段、 (11)データ・パス制御フィールド、コンディション
・コード/サイズ・フ ィールド及び次アドレス制御フィール ドを有するマイクロ命令を収容し、前 記メーしり制御コマンドを発行すると共に、当該マイク
ロ・アドレス、当該次 アドレス制御フィールド及び当該コン ディション・コードに応答してマイク ロ4ノブルーチン又はマイクロ命令を供給する制御記憶
手段、及び (iii )当該データ・パス制御フィールド、当該サ
イズ・コード及び当該コ ンディション・コード/サイズ・フィ ールドに応答し、当該中央メモリ・ユ ニットから間接的に及び当該解読手段 からデータを受信する手段であって、 当該マイクロ6h令セツ1〜及び当該マイクロリーブル
ーチンを実行すると共に、当該中火メモリ・丁1ニット
からデータをアクセスづべく当該仮想メモリ・ア ドレスを発行するマイクロ命令論理制 御手段 からなるマクロ命令実行手段と、 (b)当該メモリ制御コマンド及び当該仮想メ王り・ア
ドレスに応答し、データ・キVツシコ・メモリ・アレイ
及びマイクロプログラム制御手段を含み、当該マイクロ
プログラムの制御下に当該マクロ命令実行手段と非同期
的に作動する手段であって、当該データ・キVツシュ・
メモリ・アレイから又は当該システム・バスを介して当
該中央メモリ・ユニットからデータをアクセスすべく当
該仮想メモリ・アドレスを翻訳すると共に、そのように
アクレスしたデータを当該マクロ命令実行手段に供給す
るメモリ・アクセス手段とからIcることを特徴とする
中央処理装置。 (10) 前記解読手段がマクロ命令実行手段を含み、
当iエマイクロシーケンリ一手段が、(a)当該解読手
段から前記マイクロアドレスを受信Jろページ・レジス
タ手段と、(b)当該マイクロアドレスに応答し、当該
ページ内の1ワードのアドレスを供給するマイクロブ[
」グラム・カウンタ手段と、 〈C)当該ページ・レジスタ手段、当該マイク「」プロ
グラム・カウンタ手段及び前記次アドレス制御フィール
ドに応答し、当該マイクロアドレスを発行するジA7ン
ブ制御論1ψ手段とからなることを特徴とする特防請求
の範囲第(9)Tf口に記載の中央処理装置。 011 前記マイクロ命令論理制御手段が1ノジスタ・
セーブ手段を含み、当該レジスタ・セーブ手段が、 <a)前記メモリ・アクレス手段から受イハしIこデー
タ及び前記マクロ命令を収容すると共に、前記解読手段
から受信したデータを収容する複数のレジスタと、 (b)前記マイクロρ令に応答し、当該複数のレジスタ
から受信した当該マクロ命令及びデータに作用するプロ
グラノ\制御手段と、(C)当該プ[1グラム制御手段
に応答し、マクロ命令演算及び当該マイクロ4ノブルー
チンの実行の間当該複数のレジスタの各々の内容及びア
ドレスを一時的にセーブするラスト・イン・ファースト
・アラ1−(IIFO)論理手段 とからなることを特徴どりる1S1訂請求の範囲第(9
)項に記載の中央処理装置。 (121前記マク1−1命令実()十fすが、論理制御
311手段によって実行されるべき次のマイクロ命令の
マイクロアドレスを決定するマイクI]シーケンリ一手
段を具備し、当該マイクロシ〜ケンリ一手段(j、<a
)制御論理手段によって現在実行されるマイクロ命令
のマイクロアドレスの高位部分を収容するページ・レジ
スタ手段ど、 (1))制?11論即手段1こよって現在実行されるマ
イクロ命令のマイク[1j7ドLノスの低位部分を収容
するマイクロプログラム゛・カウンタ手段と、<C)当
該ページ・レジスタ手段、当該マイクロプログラム・カ
ウンタ手段及び前記アドレス制御フィールドに応答し、
制御論理手段によって実行されるべき次のマイクロ命令
のマイクロアドレスを発行するジャンプ制御論理手段 とからなることを特徴とする特許請求の範囲第(9)項
に記載の中央処理装置。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US538373 | 1983-10-03 | ||
US06/538,373 US4586130A (en) | 1983-10-03 | 1983-10-03 | Central processing unit for a digital computer |
Publications (2)
Publication Number | Publication Date |
---|---|
JPS60107138A true JPS60107138A (ja) | 1985-06-12 |
JPS6339931B2 JPS6339931B2 (ja) | 1988-08-09 |
Family
ID=24146659
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP59204201A Granted JPS60107138A (ja) | 1983-10-03 | 1984-10-01 | デイジタル・コンピユ−タ用中央処理装置 |
JP63145988A Granted JPS6446136A (en) | 1983-10-03 | 1988-06-15 | Central processor for digital computer |
JP63145987A Granted JPS6446135A (en) | 1983-10-03 | 1988-06-15 | Central processor for digital computer |
Family Applications After (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP63145988A Granted JPS6446136A (en) | 1983-10-03 | 1988-06-15 | Central processor for digital computer |
JP63145987A Granted JPS6446135A (en) | 1983-10-03 | 1988-06-15 | Central processor for digital computer |
Country Status (6)
Country | Link |
---|---|
US (1) | US4586130A (ja) |
EP (2) | EP0138419B1 (ja) |
JP (3) | JPS60107138A (ja) |
AT (2) | ATE86401T1 (ja) |
CA (1) | CA1230181A (ja) |
DE (2) | DE3486085T2 (ja) |
Families Citing this family (34)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4812971A (en) * | 1983-10-03 | 1989-03-14 | Digital Equipment Corporation | Central processing unit for a digital computer |
US5034879A (en) * | 1984-10-01 | 1991-07-23 | Unisys Corp. (Formerly Burroughs Corp.) | Programmable data path width in a programmable unit having plural levels of subinstruction sets |
JPS6282402A (ja) * | 1985-10-07 | 1987-04-15 | Toshiba Corp | シ−ケンス制御装置 |
JPH0827716B2 (ja) * | 1985-10-25 | 1996-03-21 | 株式会社日立製作所 | データ処理装置及びデータ処理方法 |
US4709324A (en) * | 1985-11-27 | 1987-11-24 | Motorola, Inc. | Data processor control unit having an interrupt service using instruction prefetch redirection |
US4811266A (en) * | 1986-11-05 | 1989-03-07 | Honeywell Bull Inc. | Multifunction arithmetic indicator |
KR950006590B1 (ko) * | 1986-11-14 | 1995-06-19 | 가부시기가이샤 히다찌세이사꾸쇼 | 캐시 메모리를 갖는 마이크로 프로세서 |
JP2577023B2 (ja) * | 1987-12-28 | 1997-01-29 | 株式会社日立製作所 | 情報処理装置のアドレス拡張制御方式 |
JPH01230125A (ja) * | 1988-03-10 | 1989-09-13 | Nec Corp | レジスタの部分的更新機能を持つデータ処理装置 |
EP0349124B1 (en) * | 1988-06-27 | 1996-10-09 | Digital Equipment Corporation | Operand specifier processing |
JPH07120278B2 (ja) * | 1988-07-04 | 1995-12-20 | 三菱電機株式会社 | データ処理装置 |
US5023828A (en) * | 1988-07-20 | 1991-06-11 | Digital Equipment Corporation | Microinstruction addressing in high-speed CPU |
US5119483A (en) * | 1988-07-20 | 1992-06-02 | Digital Equipment Corporation | Application of state silos for recovery from memory management exceptions |
US5590293A (en) * | 1988-07-20 | 1996-12-31 | Digital Equipment Corporation | Dynamic microbranching with programmable hold on condition, to programmable dynamic microbranching delay minimization |
US5019967A (en) * | 1988-07-20 | 1991-05-28 | Digital Equipment Corporation | Pipeline bubble compression in a computer system |
US5006980A (en) * | 1988-07-20 | 1991-04-09 | Digital Equipment Corporation | Pipelined digital CPU with deadlock resolution |
US5321823A (en) * | 1988-07-20 | 1994-06-14 | Digital Equipment Corporation | Digital processor with bit mask for counting registers for fast register saves |
US5117487A (en) * | 1988-08-26 | 1992-05-26 | Kabushiki Kaisha Toshiba | Method for accessing microprocessor and microinstruction control type microprocessor including pointer register |
US4994962A (en) * | 1988-10-28 | 1991-02-19 | Apollo Computer Inc. | Variable length cache fill |
CA1325288C (en) * | 1989-02-03 | 1993-12-14 | Ricky C. Hetherington | Method and apparatus for controlling the conversion of virtual to physical memory addresses in a digital computer system |
US5148528A (en) * | 1989-02-03 | 1992-09-15 | Digital Equipment Corporation | Method and apparatus for simultaneously decoding three operands in a variable length instruction when one of the operands is also of variable length |
US5179691A (en) * | 1989-04-12 | 1993-01-12 | Unisys Corporation | N-byte stack-oriented CPU using a byte-selecting control for enhancing a dual-operation with an M-byte instruction word user program where M<N<2M |
JPH03271829A (ja) * | 1990-03-20 | 1991-12-03 | Fujitsu Ltd | 情報処理装置 |
US5448707A (en) * | 1991-10-29 | 1995-09-05 | Intel Corporation | Mechanism to protect data saved on a local register cache during inter-subsystem calls and returns |
US5715421A (en) * | 1992-10-16 | 1998-02-03 | Seiko Epson Corporation | Apparatus and method of addressing paged mode memory including adjacent page precharging |
US5832533A (en) * | 1995-01-04 | 1998-11-03 | International Business Machines Corporation | Method and system for addressing registers in a data processing unit in an indexed addressing mode |
US7376814B1 (en) | 1999-09-07 | 2008-05-20 | Nxp B.V. | Method for forming variable length instructions in a processing system |
US7181484B2 (en) * | 2001-02-21 | 2007-02-20 | Mips Technologies, Inc. | Extended-precision accumulation of multiplier output |
US7711763B2 (en) * | 2001-02-21 | 2010-05-04 | Mips Technologies, Inc. | Microprocessor instructions for performing polynomial arithmetic operations |
US7599981B2 (en) * | 2001-02-21 | 2009-10-06 | Mips Technologies, Inc. | Binary polynomial multiplier |
US7162621B2 (en) * | 2001-02-21 | 2007-01-09 | Mips Technologies, Inc. | Virtual instruction expansion based on template and parameter selector information specifying sign-extension or concentration |
US8230144B1 (en) * | 2004-10-19 | 2012-07-24 | Broadcom Corporation | High speed multi-threaded reduced instruction set computer (RISC) processor |
FR2951938B1 (fr) | 2009-10-30 | 2012-01-06 | Oreal | Utilisation d'un extrait de punica granatum pour lutter contre la canitie |
WO2022055792A1 (en) * | 2020-09-09 | 2022-03-17 | Ascenium, Inc. | Highly parallel processing architecture with shallow pipeline |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5178150A (ja) * | 1974-12-27 | 1976-07-07 | Fujitsu Ltd | |
JPS5578343A (en) * | 1978-12-11 | 1980-06-12 | Toshiba Corp | Information processing unit |
JPS575153A (en) * | 1980-06-10 | 1982-01-11 | Nippon Telegr & Teleph Corp <Ntt> | Information processor |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5040738B1 (ja) * | 1970-06-11 | 1975-12-26 | ||
US3725868A (en) * | 1970-10-19 | 1973-04-03 | Burroughs Corp | Small reconfigurable processor for a variety of data processing applications |
US4104718A (en) * | 1974-12-16 | 1978-08-01 | Compagnie Honeywell Bull (Societe Anonyme) | System for protecting shared files in a multiprogrammed computer |
US4156927A (en) * | 1976-08-11 | 1979-05-29 | Texas Instruments Incorporated | Digital processor system with direct access memory |
ES474427A1 (es) * | 1977-10-25 | 1979-04-16 | Digital Equipment Corp | Un aparato central de tratamiento para uso en un sistema de tratamiento de datos. |
JPS54102928A (en) * | 1978-01-31 | 1979-08-13 | Fujitsu Ltd | Data reading out control system |
US4236206A (en) * | 1978-10-25 | 1980-11-25 | Digital Equipment Corporation | Central processor unit for executing instructions of variable length |
US4347566A (en) * | 1978-12-11 | 1982-08-31 | Tokyo Shibaura Denki Kabushiki Kaisha | Data processor with register file and arithmetic logic circuit on one chip and register means directly connected to the chip |
US4258419A (en) * | 1978-12-29 | 1981-03-24 | Bell Telephone Laboratories, Incorporated | Data processing apparatus providing variable operand width operation |
US4293907A (en) * | 1978-12-29 | 1981-10-06 | Bell Telephone Laboratories, Incorporated | Data processing apparatus having op-code extension register |
JPS5847053B2 (ja) * | 1979-11-19 | 1983-10-20 | 株式会社日立製作所 | デ−タ処理装置 |
AU556521B2 (en) * | 1981-06-11 | 1986-11-06 | Data General Corporation | Arithmetic unit |
US4450523A (en) * | 1981-09-11 | 1984-05-22 | Data General Corporation | Apparatus for deriving the current length of varying-length data items in a digital data processing system |
US4491908A (en) * | 1981-12-01 | 1985-01-01 | Honeywell Information Systems Inc. | Microprogrammed control of extended integer and commercial instruction processor instructions through use of a data type field in a central processor unit |
-
1983
- 1983-10-03 US US06/538,373 patent/US4586130A/en not_active Expired - Lifetime
-
1984
- 1984-09-20 EP EP84306436A patent/EP0138419B1/en not_active Expired - Lifetime
- 1984-09-20 AT AT84306436T patent/ATE86401T1/de not_active IP Right Cessation
- 1984-09-20 DE DE84306436T patent/DE3486085T2/de not_active Expired - Fee Related
- 1984-09-20 DE DE3486399T patent/DE3486399T2/de not_active Expired - Fee Related
- 1984-09-20 EP EP90118287A patent/EP0415461B1/en not_active Expired - Lifetime
- 1984-09-20 AT AT90118287T patent/ATE125374T1/de active
- 1984-10-01 JP JP59204201A patent/JPS60107138A/ja active Granted
- 1984-10-02 CA CA000464499A patent/CA1230181A/en not_active Expired
-
1988
- 1988-06-15 JP JP63145988A patent/JPS6446136A/ja active Granted
- 1988-06-15 JP JP63145987A patent/JPS6446135A/ja active Granted
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5178150A (ja) * | 1974-12-27 | 1976-07-07 | Fujitsu Ltd | |
JPS5578343A (en) * | 1978-12-11 | 1980-06-12 | Toshiba Corp | Information processing unit |
JPS575153A (en) * | 1980-06-10 | 1982-01-11 | Nippon Telegr & Teleph Corp <Ntt> | Information processor |
Also Published As
Publication number | Publication date |
---|---|
DE3486085T2 (de) | 1993-10-14 |
EP0415461A3 (en) | 1991-08-07 |
EP0415461B1 (en) | 1995-07-19 |
JPS6339931B2 (ja) | 1988-08-09 |
EP0138419B1 (en) | 1993-03-03 |
ATE86401T1 (de) | 1993-03-15 |
US4586130A (en) | 1986-04-29 |
EP0415461A2 (en) | 1991-03-06 |
ATE125374T1 (de) | 1995-08-15 |
DE3486085D1 (de) | 1993-04-08 |
EP0138419A3 (en) | 1988-08-10 |
JPH0128415B2 (ja) | 1989-06-02 |
DE3486399T2 (de) | 1996-04-18 |
CA1230181A (en) | 1987-12-08 |
JPS6446135A (en) | 1989-02-20 |
EP0138419A2 (en) | 1985-04-24 |
CA1250666C (ja) | 1989-02-28 |
JPS6446136A (en) | 1989-02-20 |
DE3486399D1 (de) | 1995-08-24 |
JPH0210452B2 (ja) | 1990-03-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPS60107138A (ja) | デイジタル・コンピユ−タ用中央処理装置 | |
US5623615A (en) | Circuit and method for reducing prefetch cycles on microprocessors | |
US5367705A (en) | In-register data manipulation using data shift in reduced instruction set processor | |
US5454091A (en) | Virtual to physical address translation scheme with granularity hint for identifying subsequent pages to be accessed | |
US5193167A (en) | Ensuring data integrity by locked-load and conditional-store operations in a multiprocessor system | |
US5568624A (en) | Byte-compare operation for high-performance processor | |
US5944841A (en) | Microprocessor with built-in instruction tracing capability | |
US5778423A (en) | Prefetch instruction for improving performance in reduced instruction set processor | |
US5781750A (en) | Dual-instruction-set architecture CPU with hidden software emulation mode | |
US6076158A (en) | Branch prediction in high-performance processor | |
US6167509A (en) | Branch performance in high speed processor | |
US5249280A (en) | Microcomputer having a memory bank switching apparatus for accessing a selected memory bank in an external memory | |
US5509137A (en) | Store processing method in a pipelined cache memory | |
US4591972A (en) | Data processing system with unique microcode control | |
US5469551A (en) | Method and apparatus for eliminating branches using conditional move instructions | |
JPS604491B2 (ja) | デ−タ処理システム | |
US6014739A (en) | Increasing general registers in X86 processors | |
JPS5811654B2 (ja) | デ−タシヨリシステム | |
US5619663A (en) | Computer instruction prefetch system | |
US4812971A (en) | Central processing unit for a digital computer | |
US4347566A (en) | Data processor with register file and arithmetic logic circuit on one chip and register means directly connected to the chip | |
US4893235A (en) | Central processing unit for a digital computer | |
US4173782A (en) | Return and link mechanism | |
CA1193738A (en) | Pre-execution next address calculating mechanism | |
CA1250666A (en) | Central processing unit for a digital computer |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
EXPY | Cancellation because of completion of term |