JPH0752386B2 - マルチデ−タ路のcpuア−キテクチヤ - Google Patents
マルチデ−タ路のcpuア−キテクチヤInfo
- Publication number
- JPH0752386B2 JPH0752386B2 JP59203894A JP20389484A JPH0752386B2 JP H0752386 B2 JPH0752386 B2 JP H0752386B2 JP 59203894 A JP59203894 A JP 59203894A JP 20389484 A JP20389484 A JP 20389484A JP H0752386 B2 JPH0752386 B2 JP H0752386B2
- Authority
- JP
- Japan
- Prior art keywords
- register
- arithmetic logic
- data
- microcode
- data path
- 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.)
- Expired - Lifetime
Links
- 238000012545 processing Methods 0.000 claims abstract description 37
- 238000012360 testing method Methods 0.000 claims abstract description 32
- 230000004044 response Effects 0.000 claims description 11
- 230000006870 function Effects 0.000 abstract description 73
- 239000000872 buffer Substances 0.000 description 13
- 238000010586 diagram Methods 0.000 description 6
- 238000013461 design Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 238000000034 method Methods 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 238000010276 construction Methods 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
-
- 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/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3885—Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units
-
- 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/38—Concurrent instruction execution, e.g. pipeline or look ahead
-
- 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/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3885—Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units
- G06F9/3893—Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units controlled in tandem, e.g. multiplier-accumulator
- G06F9/3895—Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units controlled in tandem, e.g. multiplier-accumulator for complex operations, e.g. multidimensional or interleaved address generators, macros
- G06F9/3897—Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units controlled in tandem, e.g. multiplier-accumulator for complex operations, e.g. multidimensional or interleaved address generators, macros with adaptable data path
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Executing Machine-Instructions (AREA)
- Multi Processors (AREA)
- Advance Control (AREA)
- Image Processing (AREA)
- Catalysts (AREA)
- Transition And Organic Metals Composition Catalysts For Addition Polymerization (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
- Control By Computers (AREA)
- Hardware Redundancy (AREA)
- Communication Control (AREA)
- Dram (AREA)
- Electrotherapy Devices (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Logic Circuits (AREA)
Description
【発明の詳細な説明】 産業上の利用分野 本発明は、データ処理システムの中央処理ユニット(CP
U)に係る。特に、本発明は、CPUを構成する種々の機能
ユニットの構成体に係り、主演算論理ユニット(ALU)
及び種々の特殊機能ユニットがデータレジスタにアクセ
スしたり文字定数やデータをキャッシメモリから取り出
したりできるようにする構成体に係る。
U)に係る。特に、本発明は、CPUを構成する種々の機能
ユニットの構成体に係り、主演算論理ユニット(ALU)
及び種々の特殊機能ユニットがデータレジスタにアクセ
スしたり文字定数やデータをキャッシメモリから取り出
したりできるようにする構成体に係る。
従来の技術 データ処理システムの中央処理ユニット(CPU)は、デ
ータの処理、論理及び演算動作、並びに他のデータ変更
を行なう部分である。CPUの各構成要素、即ち、演算論
理ユニットや種々のレジスタやマルチプレクサの物理的
及び論理的な相互接続部は、データ路として知られてい
る。
ータの処理、論理及び演算動作、並びに他のデータ変更
を行なう部分である。CPUの各構成要素、即ち、演算論
理ユニットや種々のレジスタやマルチプレクサの物理的
及び論理的な相互接続部は、データ路として知られてい
る。
大部分の公知CPUは、単一データ路構成であり、即ち、C
PUを通るデータの流れが1本の経路に沿って生じるよう
に構成されている。
PUを通るデータの流れが1本の経路に沿って生じるよう
に構成されている。
幾つかの公知CPUは、マルチデータ路で構成されてい
る。これらのCPUでは、これを実施する場合に多数のマ
ルチポートレジスタが使用される。然し乍ら、このよう
な構成では、大型のマルチプレクサを使用することが必
要である。例えば、レジスタを30個有するCPUの場合、
各マルチプレクサは、全てのレジスタに応じられるよう
に、巾30の入力セットを有するよう構成される。
る。これらのCPUでは、これを実施する場合に多数のマ
ルチポートレジスタが使用される。然し乍ら、このよう
な構成では、大型のマルチプレクサを使用することが必
要である。例えば、レジスタを30個有するCPUの場合、
各マルチプレクサは、全てのレジスタに応じられるよう
に、巾30の入力セットを有するよう構成される。
更に、公知のCPUは、単一のマイクロ命令ラインの実行
がデータ路を介して多数の段階で進行するように、パイ
プライン形態で、即ち、タイミングという観点から2つ
以上の段で構成されてもよいし構成されなくてもよい。
パイプライン型アーキテクチャでは、種々の連続した命
令の部分を同時に実行できるようにすることにより、CP
Uによるデータの処理速度を速めることができる。例え
ば、第1命令の後部段階即ちランクが実行される間に、
第2命令の前部段階即ちランクも実行される。
がデータ路を介して多数の段階で進行するように、パイ
プライン形態で、即ち、タイミングという観点から2つ
以上の段で構成されてもよいし構成されなくてもよい。
パイプライン型アーキテクチャでは、種々の連続した命
令の部分を同時に実行できるようにすることにより、CP
Uによるデータの処理速度を速めることができる。例え
ば、第1命令の後部段階即ちランクが実行される間に、
第2命令の前部段階即ちランクも実行される。
本発明者が知っている前記の公知データ路構成はタスク
の実行には充分であるが、各々次のような欠点が1つ以
上ある。マルチポートレジスタ及びマルチプレクサを使
用したマルチデータ路CPUは、通常、巾の広いマルチプ
レクサを使用するために部品点数が比較的多い。更に、
このようなマルチプレクサを使用することにより、CPU
のサイクルタイムが限定される。というのは、一般に、
マルチプレクサの巾が広い程、それに関連した選択時間
を長くしなければならないからである。
の実行には充分であるが、各々次のような欠点が1つ以
上ある。マルチポートレジスタ及びマルチプレクサを使
用したマルチデータ路CPUは、通常、巾の広いマルチプ
レクサを使用するために部品点数が比較的多い。更に、
このようなマルチプレクサを使用することにより、CPU
のサイクルタイムが限定される。というのは、一般に、
マルチプレクサの巾が広い程、それに関連した選択時間
を長くしなければならないからである。
パイプライン式に構成されていない公知のCPUは、一般
に、パイプライン構成の装置と同じ命令処理速度を発揮
することができない。
に、パイプライン構成の装置と同じ命令処理速度を発揮
することができない。
巾の広いマルチプレクサを用いた公知のマルチデータ路
CPUの別の特徴は、2つ以上のデータレジスタの内容を
同時にアクセスする場合に全体的な融通性が高いことで
ある。然し乍ら、この融通性は、ほとんどの場合、錯覚
的な性能効果を発揮するに過ぎないことが分っている。
というのは、使用される大部分のオペランドは、それ以
前のオペレーションから統計学的に得られたものだから
である。
CPUの別の特徴は、2つ以上のデータレジスタの内容を
同時にアクセスする場合に全体的な融通性が高いことで
ある。然し乍ら、この融通性は、ほとんどの場合、錯覚
的な性能効果を発揮するに過ぎないことが分っている。
というのは、使用される大部分のオペランドは、それ以
前のオペレーションから統計学的に得られたものだから
である。
それ故、公知のデータ路機構は一応利用できるが、性能
という点と、性能対コストという点の両方から依然とし
て改善の余地が残されている。
という点と、性能対コストという点の両方から依然とし
て改善の余地が残されている。
公知システムの大部分は、CPUの各部分がチェックを受
けないか、或いは又、高価で冗長なチェックハードウェ
アが必要とされる。更に、公知のCPUは一般にマイクロ
分岐を行なうのにテスト論理回路と種々の機能ユニット
との間に多数の相互接続部を必要とする。
けないか、或いは又、高価で冗長なチェックハードウェ
アが必要とされる。更に、公知のCPUは一般にマイクロ
分岐を行なうのにテスト論理回路と種々の機能ユニット
との間に多数の相互接続部を必要とする。
発明の目的 本発明の目的は、公知のデータ路アーキテクチャの欠点
を1つ以上解消するCPUデータ路アーキテクチャを提供
することである。
を1つ以上解消するCPUデータ路アーキテクチャを提供
することである。
本発明の別の目的は、多数のデータ路を有するCPUデー
タ路アーキテクチャを提供することである。
タ路アーキテクチャを提供することである。
本発明の更に別の目的は、レジスタのマルチポート化及
び巾の広いマルチプレクサの使用を最小にするマルチデ
ータ路CPUアーキテクチャを提供することである。
び巾の広いマルチプレクサの使用を最小にするマルチデ
ータ路CPUアーキテクチャを提供することである。
本発明のもう1つの目的は、データ処理システムに使用
される、マルチデータ路CPUであって、演算論理ユニッ
ト(ALU)とは別のデータ路にテスト機能を設けて、テ
ストロジックを最少にするCPUを提供することにある。
される、マルチデータ路CPUであって、演算論理ユニッ
ト(ALU)とは別のデータ路にテスト機能を設けて、テ
ストロジックを最少にするCPUを提供することにある。
目的を達成する手段 前記の目的を達成するため、本発明によれば、データ処
理システムに用いるパイプライン型中央処理ユニット
(CPU)アーキテクチャにおいて、オペランドに基づい
て演算論理処理を行うように第1データ路に設けられた
演算論理手段と、この演算論理手段と同時にオペランド
を処理するように第2データ路に設けられた複数の選択
可能な機能手段であって、該機能手段の1つが、マイク
ロ命令中の第1のマイクロコードフィールドに応答して
選択される、前記機能手段と、処理されるべきオペラン
ドを記憶する複数の第1レジスタ手段と、該第1レジス
タ手段に接続され、前記マイクロ命令中の第2のマイク
ロコードフィールドに応答して前記オペランドの選択さ
れたものを、前記第2マイクロコードフィールドによっ
て方向付けされた前記第1データ路及び前記第2データ
路に同時に配置する複数の第1マルチプレクサ手段と、
前記演算論理手段からの結果を前記第1レジスタ手段の
少なくとも1つに返送する第1の返送バス手段と、前記
機能手段の動作の結果を前記第1レジスタ手段の少なく
とも1つに返送するための、第1返送バス手段から分離
している第2の返送バス手段とを備えたことを特徴とす
るCPUアーキテクチャが提供される。
理システムに用いるパイプライン型中央処理ユニット
(CPU)アーキテクチャにおいて、オペランドに基づい
て演算論理処理を行うように第1データ路に設けられた
演算論理手段と、この演算論理手段と同時にオペランド
を処理するように第2データ路に設けられた複数の選択
可能な機能手段であって、該機能手段の1つが、マイク
ロ命令中の第1のマイクロコードフィールドに応答して
選択される、前記機能手段と、処理されるべきオペラン
ドを記憶する複数の第1レジスタ手段と、該第1レジス
タ手段に接続され、前記マイクロ命令中の第2のマイク
ロコードフィールドに応答して前記オペランドの選択さ
れたものを、前記第2マイクロコードフィールドによっ
て方向付けされた前記第1データ路及び前記第2データ
路に同時に配置する複数の第1マルチプレクサ手段と、
前記演算論理手段からの結果を前記第1レジスタ手段の
少なくとも1つに返送する第1の返送バス手段と、前記
機能手段の動作の結果を前記第1レジスタ手段の少なく
とも1つに返送するための、第1返送バス手段から分離
している第2の返送バス手段とを備えたことを特徴とす
るCPUアーキテクチャが提供される。
また、本発明によれば、1命令により複数のオペランド
が1マイクロコードワードの実行の間に処理されるデー
タ処理システムに用いるパイプライン型中央処理ユニッ
ト(CPU)アーキテクチャにおいて、前記マイクロコー
ドワードの第1のマイクロコードフィールドによって特
定されたオペランドに基づいて演算論理処理を行うよう
に第1データ路に設けられた演算論理手段と、第2デー
タ路に設けられた少なくとも2つの選択可能な機能手段
であって、該機能手段の1つが、前記マイクロコードワ
ードの第2のマイクロコードフィールドによって特定さ
れた前記演算動作と同時にオペランドでの動作をなすよ
うに選択される、前記機能手段と、前記演算論理手段と
前記機能手段とにより処理可能なようにオペランドをホ
ールドする複数の第1レジスタ手段と、前記マイクロコ
ードワードの第3のマイクロコードフィールドに応答し
て、前記第1レジスタ手段の1つを前記演算論理手段
に、及び前記第1レジスタ手段の別の1つを前記機能手
段に選択的に接続する複数の第1選択論理手段と、前記
演算論理手段の動作の結果を前記第1レジスタ手段の少
なくとも1つに返送する第1の返送バス手段と、前記機
能手段の動作の結果を前記第1レジスタ手段の少なくと
も1つに返送するための、第1返送バス手段から分離し
ている第2の返送バス手段とを備えたことを特徴とする
CPUアーキテクチャが提供される。
が1マイクロコードワードの実行の間に処理されるデー
タ処理システムに用いるパイプライン型中央処理ユニッ
ト(CPU)アーキテクチャにおいて、前記マイクロコー
ドワードの第1のマイクロコードフィールドによって特
定されたオペランドに基づいて演算論理処理を行うよう
に第1データ路に設けられた演算論理手段と、第2デー
タ路に設けられた少なくとも2つの選択可能な機能手段
であって、該機能手段の1つが、前記マイクロコードワ
ードの第2のマイクロコードフィールドによって特定さ
れた前記演算動作と同時にオペランドでの動作をなすよ
うに選択される、前記機能手段と、前記演算論理手段と
前記機能手段とにより処理可能なようにオペランドをホ
ールドする複数の第1レジスタ手段と、前記マイクロコ
ードワードの第3のマイクロコードフィールドに応答し
て、前記第1レジスタ手段の1つを前記演算論理手段
に、及び前記第1レジスタ手段の別の1つを前記機能手
段に選択的に接続する複数の第1選択論理手段と、前記
演算論理手段の動作の結果を前記第1レジスタ手段の少
なくとも1つに返送する第1の返送バス手段と、前記機
能手段の動作の結果を前記第1レジスタ手段の少なくと
も1つに返送するための、第1返送バス手段から分離し
ている第2の返送バス手段とを備えたことを特徴とする
CPUアーキテクチャが提供される。
更に、本発明によれば、1命令により複数のオペランド
が1命令サイクルの間に処理されるデータ処理システム
であって、データ路に設けられた演算論理ユニットを有
するデータ処理システムの中央処理ユニットにおいて、
前記命令に従って命令サイクルの間に前記オペランドに
基づく動作を行うように、前記演算論理ユニットのデー
タ路とは別のデータ路に設けられた複数の選択可能な機
能手段を備え、前記命令の動作によって該機能手段の1
つを選択し且つその機能とそのオペランドとを定めてお
り、更に、前記機能手段に設けられ、テスト条件が合致
したことを表示するセンス手段と、中央処理ユニット中
のマイクロシーケンサに接続され且つ前記センス手段に
応答して、前記テスト条件が合致したことを前記センス
手段が表示したときマイクロ分岐動作を行うマイクロ分
岐手段とを備えたことを特徴とする中央処理ユニットが
提供される。
が1命令サイクルの間に処理されるデータ処理システム
であって、データ路に設けられた演算論理ユニットを有
するデータ処理システムの中央処理ユニットにおいて、
前記命令に従って命令サイクルの間に前記オペランドに
基づく動作を行うように、前記演算論理ユニットのデー
タ路とは別のデータ路に設けられた複数の選択可能な機
能手段を備え、前記命令の動作によって該機能手段の1
つを選択し且つその機能とそのオペランドとを定めてお
り、更に、前記機能手段に設けられ、テスト条件が合致
したことを表示するセンス手段と、中央処理ユニット中
のマイクロシーケンサに接続され且つ前記センス手段に
応答して、前記テスト条件が合致したことを前記センス
手段が表示したときマイクロ分岐動作を行うマイクロ分
岐手段とを備えたことを特徴とする中央処理ユニットが
提供される。
実 施 例 第1図には、データ路アーキテクチャ全体がブロック図
で示されている。この好ましい実施例では、2つのユニ
ットリソースがある。ALU10及び特殊機能ユニット12a、
12b、12c・・・12nは、使用可能なデータリソースによ
って作動される。ALU10の出力は主バス14に送られ、特
殊機能ユニット12の出力は、特殊な主バス16によって分
担される(即ち、一度に1つのユニットのみが作動可能
にされる)。
で示されている。この好ましい実施例では、2つのユニ
ットリソースがある。ALU10及び特殊機能ユニット12a、
12b、12c・・・12nは、使用可能なデータリソースによ
って作動される。ALU10の出力は主バス14に送られ、特
殊機能ユニット12の出力は、特殊な主バス16によって分
担される(即ち、一度に1つのユニットのみが作動可能
にされる)。
これら2つのデータリソースに対するソースデータは、
同じ構成の、2組のデータ路となるバスによって供給さ
れる。1組のバスは、演算論理手段としてのALU10への
データ路となる、Jバス18及びKバス20であって、これ
らのバスには、それぞれ、4:1マルチプレクサ22及び24
によって情報が供給される。もう1組のバスは、機能手
段としての特殊機能ユニット12a〜12nへのデータ路とな
る。SJバス26及びSKバス28であって、これらのバスに
は、それぞれ、4:1マルチプレクサ30及び32によって情
報が供給される。マルチプレクサの選択は、当業者に明
らかなようにマイクロコードフィールドによって行なわ
れる。この好ましい実施例では、4:1のマルチプレクサ
が使用されているが、入力接続部の数がもっと多いシス
テムで情報を供給できることが当業者に容易に明らかで
あろう。但し、この場合はハードウェアの複雑さが増す
上に、融通性が改善されるという断定はできない。
同じ構成の、2組のデータ路となるバスによって供給さ
れる。1組のバスは、演算論理手段としてのALU10への
データ路となる、Jバス18及びKバス20であって、これ
らのバスには、それぞれ、4:1マルチプレクサ22及び24
によって情報が供給される。もう1組のバスは、機能手
段としての特殊機能ユニット12a〜12nへのデータ路とな
る。SJバス26及びSKバス28であって、これらのバスに
は、それぞれ、4:1マルチプレクサ30及び32によって情
報が供給される。マルチプレクサの選択は、当業者に明
らかなようにマイクロコードフィールドによって行なわ
れる。この好ましい実施例では、4:1のマルチプレクサ
が使用されているが、入力接続部の数がもっと多いシス
テムで情報を供給できることが当業者に容易に明らかで
あろう。但し、この場合はハードウェアの複雑さが増す
上に、融通性が改善されるという断定はできない。
全てのデータリソースを各々のマルチプレクサに同時に
利用することはできない。Jバス18及びSJバス26に情報
供給する4:1マルチプレクサ22及び30は、多数のデータ
ソース、即ち、Jレジスタ34、CDレジスタ36、Mレジス
タ38及びSMレジスタ40によって情報供給される。Kバス
20及びSKバス28に情報供給する4:1マルチプレクサ24及
び32は、Mレジスタ38、SMレジスタ40、Kレジスタ42及
びLITレジスタ44によって情報供給される。Mデータソ
ースレジスタ38及びSMデータソースレジスタ40は、4:1
マルチプレクサ22及び4:1マルチプレクサ24を経てJバ
ス18及びKバス20からALUの各側に入力されてMデータ
路14に出力され、また、4:1マルチプレクサ30及び4:1マ
ルチプレクサ31を経てSJバス26及びSKバス28から特殊機
能モジュール12a〜12nの各側に入力されてSMデータ路に
出力されるように、共用されている。
利用することはできない。Jバス18及びSJバス26に情報
供給する4:1マルチプレクサ22及び30は、多数のデータ
ソース、即ち、Jレジスタ34、CDレジスタ36、Mレジス
タ38及びSMレジスタ40によって情報供給される。Kバス
20及びSKバス28に情報供給する4:1マルチプレクサ24及
び32は、Mレジスタ38、SMレジスタ40、Kレジスタ42及
びLITレジスタ44によって情報供給される。Mデータソ
ースレジスタ38及びSMデータソースレジスタ40は、4:1
マルチプレクサ22及び4:1マルチプレクサ24を経てJバ
ス18及びKバス20からALUの各側に入力されてMデータ
路14に出力され、また、4:1マルチプレクサ30及び4:1マ
ルチプレクサ31を経てSJバス26及びSKバス28から特殊機
能モジュール12a〜12nの各側に入力されてSMデータ路に
出力されるように、共用されている。
この点においては、本発明の好ましい実施例に用いられ
る種々のレジスタ及びバスの機能を指摘することが有用
であろうが、これらの選択は或る程度任意に行なわれる
ものであり且つ又その他の機能又は優先順位を本発明の
精神及び範囲から逸脱せずに種々のバス及びレジスタ並
びにその構成体に割り当てできることが当業者に容易に
明らかであろう。
る種々のレジスタ及びバスの機能を指摘することが有用
であろうが、これらの選択は或る程度任意に行なわれる
ものであり且つ又その他の機能又は優先順位を本発明の
精神及び範囲から逸脱せずに種々のバス及びレジスタ並
びにその構成体に割り当てできることが当業者に容易に
明らかであろう。
Mレジスタ38は、主ALUで以前に行なわれた演算結果を
保持し、このような結果はALU10の出力からMバス14を
経て該レジスタの入力に送られる。SMレジスタ40は、以
前に行なわれた選択された特殊機能の結果−特殊機能モ
ジュール12a〜12nのいずれかから生じる−を保持する。
保持し、このような結果はALU10の出力からMバス14を
経て該レジスタの入力に送られる。SMレジスタ40は、以
前に行なわれた選択された特殊機能の結果−特殊機能モ
ジュール12a〜12nのいずれかから生じる−を保持する。
Jレジスタ34及びKレジスタ42の各々は、複数のレジス
タのうちの選択されたレジスタ、主としてマルチレジス
タファイル46の選択されたレジスタを含む、の内容を保
持する。J又はKレジスタ、プログラムカウンタ又はメ
モリアドレスレジスタのような他のレジスタから公知の
他のマルチプレクサを経てデータを得ることが当業者に
明らかであろう。
タのうちの選択されたレジスタ、主としてマルチレジス
タファイル46の選択されたレジスタを含む、の内容を保
持する。J又はKレジスタ、プログラムカウンタ又はメ
モリアドレスレジスタのような他のレジスタから公知の
他のマルチプレクサを経てデータを得ることが当業者に
明らかであろう。
CDレジスタ36は、アドレス可能なキャッシ48の出力内容
を保持し、キャッス48はSMレジスタ40からライン49を経
てロードされる。このランクのレジスタの中の最後の主
たるレジスタは、LITレジスタ44であり、これはマイク
ロコードビットフィールド50によって送られた文字定数
を保持する。
を保持し、キャッス48はSMレジスタ40からライン49を経
てロードされる。このランクのレジスタの中の最後の主
たるレジスタは、LITレジスタ44であり、これはマイク
ロコードビットフィールド50によって送られた文字定数
を保持する。
マルチレジスタファイル46は、Jレジスタ34及びKレジ
スタ42を駆動するためのレジスタ並びにMレジスタ38か
らロードさるべきファイル内のレジスタを指定する多数
のマイクロコードフィールドによって制御される。ポイ
ンタレジスタ(図示せず)は、マイクロコードとあいま
って、ロード及び読み取りさるべきレジスタを選択す
る。このレジスタは、Mバス14からロードされるか、或
いは、マイクロコードフィールドの使用によって増加も
しくは減少される。これらファイルレジスタをロードす
るのに使用される全てのフィールドはランク2であり、
これらを読み取るのに使用される全てのフィールドはラ
ンク1である。
スタ42を駆動するためのレジスタ並びにMレジスタ38か
らロードさるべきファイル内のレジスタを指定する多数
のマイクロコードフィールドによって制御される。ポイ
ンタレジスタ(図示せず)は、マイクロコードとあいま
って、ロード及び読み取りさるべきレジスタを選択す
る。このレジスタは、Mバス14からロードされるか、或
いは、マイクロコードフィールドの使用によって増加も
しくは減少される。これらファイルレジスタをロードす
るのに使用される全てのフィールドはランク2であり、
これらを読み取るのに使用される全てのフィールドはラ
ンク1である。
前記したように、第1図のデータ路の作動は、参考とし
てここに取り上げる本発明と同じ譲渡人に譲渡された米
国特許第4,574,344号明細書及び欧州特許公開第0 136 1
82号明細書に開示されたような少なくとも最低2ランク
のマイクロコードパイプラインによって行なわれるのが
好ましい。
てここに取り上げる本発明と同じ譲渡人に譲渡された米
国特許第4,574,344号明細書及び欧州特許公開第0 136 1
82号明細書に開示されたような少なくとも最低2ランク
のマイクロコードパイプラインによって行なわれるのが
好ましい。
本発明の好ましい実施例では、マルチレジスタファイル
46、多数の種々のレジスタの1つに含まれた結果をJレ
ジスタ34の入力に送るマルチプレクサ52、及びKレジス
タ42の入力に対して同様の機能を実行するマルチプレク
サ54のためのマルチコードアドレス機能が所与のマイク
ロ命令のランク1マイクロコードビットフィールドによ
ってデコードされる。マルチプレクサ52及び54は、プロ
グラムカウンタ、メモリアドレスレジスタ又は状態レジ
スタのようなあまり頻繁にアクセスされないレジスタの
ポートを形成する。このような構成により、主レジスタ
路を妨げることなく多数のレジスタにアクセスできるこ
とが当業者に明らかであろう。
46、多数の種々のレジスタの1つに含まれた結果をJレ
ジスタ34の入力に送るマルチプレクサ52、及びKレジス
タ42の入力に対して同様の機能を実行するマルチプレク
サ54のためのマルチコードアドレス機能が所与のマイク
ロ命令のランク1マイクロコードビットフィールドによ
ってデコードされる。マルチプレクサ52及び54は、プロ
グラムカウンタ、メモリアドレスレジスタ又は状態レジ
スタのようなあまり頻繁にアクセスされないレジスタの
ポートを形成する。このような構成により、主レジスタ
路を妨げることなく多数のレジスタにアクセスできるこ
とが当業者に明らかであろう。
所与のマイクロ命令のランク2部分のマイクロコードビ
ットフィールドは、4:1マルチプレクサ22、24、30及び3
2をデコードすると共に、ALU10及び特殊機能ユニット12
a〜12nの作動を制御し且つ限定する。特殊機能ユニット
については、ランク2マイクロコードビットフィールド
の1部が、n個の特殊機能ユニット12a〜12nの1つの選
択を制御すると共に、その機能を限定する。使用できる
マイクロコードフィールドの特定の部分は重要でなく且
つ又適当なランクのマイクロコードフィールド内のいか
なるビット位置を使用してもよいことが当業者に明らか
であろう。全てのレジスタは同時にタイミング取りされ
るが、CDレジスタ36はマイクロコードがキャッシからの
ロード作動を指定した時だけタイミング取りされる。或
るマイクロコードフィールドは、CDレジスタ36へ実行禁
止信号(図示せず)を与える。幾つかのレジスタ(M、
SM、CD及びマルチレジスタファイル)のロード作動はマ
イクロ分岐中に任意に禁止することができる。
ットフィールドは、4:1マルチプレクサ22、24、30及び3
2をデコードすると共に、ALU10及び特殊機能ユニット12
a〜12nの作動を制御し且つ限定する。特殊機能ユニット
については、ランク2マイクロコードビットフィールド
の1部が、n個の特殊機能ユニット12a〜12nの1つの選
択を制御すると共に、その機能を限定する。使用できる
マイクロコードフィールドの特定の部分は重要でなく且
つ又適当なランクのマイクロコードフィールド内のいか
なるビット位置を使用してもよいことが当業者に明らか
であろう。全てのレジスタは同時にタイミング取りされ
るが、CDレジスタ36はマイクロコードがキャッシからの
ロード作動を指定した時だけタイミング取りされる。或
るマイクロコードフィールドは、CDレジスタ36へ実行禁
止信号(図示せず)を与える。幾つかのレジスタ(M、
SM、CD及びマルチレジスタファイル)のロード作動はマ
イクロ分岐中に任意に禁止することができる。
本発明の好ましい実施例について以上に述べたデータ路
の構成は、コスト及び性能という点から著しい融通性を
発揮し、ハードウェアの複雑と多様性との兼ね合いを首
尾よく行なえることが当業者に明らかであろう。
の構成は、コスト及び性能という点から著しい融通性を
発揮し、ハードウェアの複雑と多様性との兼ね合いを首
尾よく行なえることが当業者に明らかであろう。
特殊機能ユニット12a〜12nは、タスクの関連したグルー
プに専用とすることができる。例えば、論理又は演算機
能を実行してその結果をSMバスに返送できる補助ALUが
その1つである。
プに専用とすることができる。例えば、論理又は演算機
能を実行してその結果をSMバスに返送できる補助ALUが
その1つである。
第2図には、ALUとしての特殊機能ユニットの実施例が
示されている。ALUユニット100の入力102はSJバス26に
接続され、入力104はSKバス28に接続され、そしてその
出力106はバッファ108に接続されている。バッファ108
はALUの演算結果をSMバス16に戻す。SMバスには2つ以
上の特殊機能ユニットが取り付けられているので、バッ
ファ108は、これが選択された時だけこの特殊機能ユニ
ットがSMバス16の制御権をもつよう確保することにより
バスの競合を防止する手段を備えている。従って、バッ
ファ108は、デコードユニット110によって駆動されるOE
(出力可能化)入力を有している。ランク2のマイクロ
コードフィールド112はデコードユニット110を駆動する
と共に、SMバス16に取り付けられた全ての特殊機能ユニ
ットに対する同様のデコードユニットを駆動する。各々
のデコードユニットは、マイクロコードフィールド112
に現われるマイクロコードのあらゆる組合せの1つのみ
を認識するように調整される。従って、1つのバッファ
をして1つの特殊機能ユニットをSMバス16に接続できる
ようにするのは1つのデコードユニットだけである。
示されている。ALUユニット100の入力102はSJバス26に
接続され、入力104はSKバス28に接続され、そしてその
出力106はバッファ108に接続されている。バッファ108
はALUの演算結果をSMバス16に戻す。SMバスには2つ以
上の特殊機能ユニットが取り付けられているので、バッ
ファ108は、これが選択された時だけこの特殊機能ユニ
ットがSMバス16の制御権をもつよう確保することにより
バスの競合を防止する手段を備えている。従って、バッ
ファ108は、デコードユニット110によって駆動されるOE
(出力可能化)入力を有している。ランク2のマイクロ
コードフィールド112はデコードユニット110を駆動する
と共に、SMバス16に取り付けられた全ての特殊機能ユニ
ットに対する同様のデコードユニットを駆動する。各々
のデコードユニットは、マイクロコードフィールド112
に現われるマイクロコードのあらゆる組合せの1つのみ
を認識するように調整される。従って、1つのバッファ
をして1つの特殊機能ユニットをSMバス16に接続できる
ようにするのは1つのデコードユニットだけである。
ランク2の第2マイクロコードフィールド114は、ALUユ
ニット100に接続されて示されている。このマイクロコ
ードフィールドは、ALUユニット100によって実行さるべ
き演算を限定する。
ニット100に接続されて示されている。このマイクロコ
ードフィールドは、ALUユニット100によって実行さるべ
き演算を限定する。
作動中、ALUユニット100のような特殊ユニットは常にSJ
及びSKバスに取り付けられ、従って常にその機能を実行
する用意ができている。SMバスの制御権をもつのは一度
に1つの機能だけである。この選択はマイクロコードフ
ィールド112によって決定されてデコーダ110によってデ
コードされ、これによりバッファ108はSMバス16を駆動
することができる。
及びSKバスに取り付けられ、従って常にその機能を実行
する用意ができている。SMバスの制御権をもつのは一度
に1つの機能だけである。この選択はマイクロコードフ
ィールド112によって決定されてデコーダ110によってデ
コードされ、これによりバッファ108はSMバス16を駆動
することができる。
ALU100は、多数のテストのうちの1つを行なうのに有用
な出力ALU=0(参照番号116で示す)を発生する。前記
したように、以前の命令において使用しなかったオプシ
ョンのマイクロコードを用いて、第1図に一般的に示さ
れたCPUを介してオペレーションを行ない、これにより
生じた量をSJ及びSKバスに出力してもよい。
な出力ALU=0(参照番号116で示す)を発生する。前記
したように、以前の命令において使用しなかったオプシ
ョンのマイクロコードを用いて、第1図に一般的に示さ
れたCPUを介してオペレーションを行ない、これにより
生じた量をSJ及びSKバスに出力してもよい。
SJバス及びSKバスに同時に現われる結果が等しいものと
なるようにこれらのマイクロコードテストルーチンを設
計した場合には、ALU100の出力116をテストの最終段階
として使用し、マイクロコードによってテストされたハ
ードウェアが正しく機能しているかどうかを判断するこ
とができる。プログラムのこの点においてALU=0以外
の結果を用いて、SJバス26及びSKバス28の信号不一致に
よりプロセッサの作動を停止することもできる。これに
より、多数の冗長回路なしには他の手段(例えばパリテ
ィ)によって保護されないようなCPUの種々の部分が正
しく機能しているかどうかを確認する方法が与えられ
る。このチェックは通常のシステム作動と同時に行なわ
れ、システムの性能に影響を及ぼすことはない。例え
ば、簡単なADDマイクロ命令では、特殊機能モジュール1
2a〜12nを使用する必要がない。
なるようにこれらのマイクロコードテストルーチンを設
計した場合には、ALU100の出力116をテストの最終段階
として使用し、マイクロコードによってテストされたハ
ードウェアが正しく機能しているかどうかを判断するこ
とができる。プログラムのこの点においてALU=0以外
の結果を用いて、SJバス26及びSKバス28の信号不一致に
よりプロセッサの作動を停止することもできる。これに
より、多数の冗長回路なしには他の手段(例えばパリテ
ィ)によって保護されないようなCPUの種々の部分が正
しく機能しているかどうかを確認する方法が与えられ
る。このチェックは通常のシステム作動と同時に行なわ
れ、システムの性能に影響を及ぼすことはない。例え
ば、簡単なADDマイクロ命令では、特殊機能モジュール1
2a〜12nを使用する必要がない。
加算さるべきオペランドは、Jバス18及びKバス20を経
てALU10に送られる。更に、データ路の融通性により、
同じオペランドを特殊機能ALU100に同時に与えることが
できる。これに続くクロック、主ALU及び特殊ALUの結果
はMレジスタ38及びSMレジスタ40に得られる。これらの
結果は、マルチプレクサ30及び32に通され、そして特殊
機能ALUの入力102及び104へ与えられる。マイクロコー
ドフィールド114は、特殊ALU100に減算を行なわせそし
て結果がゼロでないことがライン116で示された場合にC
PUを停止させるように指令するチェック機能を実行す
る。かくて、両ALU及び多数の制御路の適正作動が確認
される。
てALU10に送られる。更に、データ路の融通性により、
同じオペランドを特殊機能ALU100に同時に与えることが
できる。これに続くクロック、主ALU及び特殊ALUの結果
はMレジスタ38及びSMレジスタ40に得られる。これらの
結果は、マルチプレクサ30及び32に通され、そして特殊
機能ALUの入力102及び104へ与えられる。マイクロコー
ドフィールド114は、特殊ALU100に減算を行なわせそし
て結果がゼロでないことがライン116で示された場合にC
PUを停止させるように指令するチェック機能を実行す
る。かくて、両ALU及び多数の制御路の適正作動が確認
される。
本発明のCPUにおいて実施される特殊機能ユニットの別
の例は、マルチアドレスクラッチパッドである。RAM又
は他の適当なメモリ或いはレジスタ装置として構成され
るスクラッチパッド120は、SJバス26、SKバス28及びSM
バス16に接続されて示されている。SJバスはスクラッチ
パッド120のデータ入力ポートとして使用され、SKバス
はスクラッチパッド120をアクセスするのに使用される
アドレスの1部を保持するのに使用される。スクラッチ
パッド120をアドレスするのに使用されるアドレスの別
の部分はマイクロコードフィールド114から導出され
る。
の例は、マルチアドレスクラッチパッドである。RAM又
は他の適当なメモリ或いはレジスタ装置として構成され
るスクラッチパッド120は、SJバス26、SKバス28及びSM
バス16に接続されて示されている。SJバスはスクラッチ
パッド120のデータ入力ポートとして使用され、SKバス
はスクラッチパッド120をアクセスするのに使用される
アドレスの1部を保持するのに使用される。スクラッチ
パッド120をアドレスするのに使用されるアドレスの別
の部分はマイクロコードフィールド114から導出され
る。
ALUの例の場合と同様に、デコードユニット122はマイク
ロコードフィールド112を検査し、スクラッチパッド120
がSMバス16に送出する特定のピットパターンが選択され
たかどうかを決定する。然し乍ら、ALU100に組み合わさ
れたデコードユニット110の場合とは異なり、デコード
ユニット122は2つの出力を有している。これら出力の
一方、即ちライン124は、スクラッチパッド120の出力可
能化端子に単一のビットを与える。この出力可能化入力
は、当業分野で知られたように、スクラッチパッド120
の出力駆動装置を作動不能にし、スクラッチパッドがSM
バス16に選択的に接続されるようにする。第2の出力、
即ち、ライン126は、スクラッチパッド120の読み取り/
書き込み入力を駆動するのに使用され、スクラッチパッ
ド120が読み取り作動を実行するか書き込み作動を実行
するかを定める。
ロコードフィールド112を検査し、スクラッチパッド120
がSMバス16に送出する特定のピットパターンが選択され
たかどうかを決定する。然し乍ら、ALU100に組み合わさ
れたデコードユニット110の場合とは異なり、デコード
ユニット122は2つの出力を有している。これら出力の
一方、即ちライン124は、スクラッチパッド120の出力可
能化端子に単一のビットを与える。この出力可能化入力
は、当業分野で知られたように、スクラッチパッド120
の出力駆動装置を作動不能にし、スクラッチパッドがSM
バス16に選択的に接続されるようにする。第2の出力、
即ち、ライン126は、スクラッチパッド120の読み取り/
書き込み入力を駆動するのに使用され、スクラッチパッ
ド120が読み取り作動を実行するか書き込み作動を実行
するかを定める。
更に一般的な意味においては、マイクロコードフィール
ド112は一般に特定の特殊機能ユニットの選択をデコー
ドしてその出力をSMバス16に送出するよう使用できるこ
とが上記の例から明らかとなろう。マイクロコードフィ
ールド114は、どのような特殊機能ユニットが実施され
ようとも特殊アドレス機能又は機能の限定を行なうのに
有用である。
ド112は一般に特定の特殊機能ユニットの選択をデコー
ドしてその出力をSMバス16に送出するよう使用できるこ
とが上記の例から明らかとなろう。マイクロコードフィ
ールド114は、どのような特殊機能ユニットが実施され
ようとも特殊アドレス機能又は機能の限定を行なうのに
有用である。
パリティは、通常、これが作用するところのデータと共
に送られるが、特殊機能ユニット12a〜12nは1クロック
サイクル後でパリティを送る。さもなくば、特殊機能ユ
ニット12a〜12nが該ユニットからの出力データと直列に
パリティを発生する場合には、パリティの発生によって
装置のサイクルタイムが遅らされることになる。
に送られるが、特殊機能ユニット12a〜12nは1クロック
サイクル後でパリティを送る。さもなくば、特殊機能ユ
ニット12a〜12nが該ユニットからの出力データと直列に
パリティを発生する場合には、パリティの発生によって
装置のサイクルタイムが遅らされることになる。
サイクルタイムの遅れを防ぐため、特殊機能ユニット12
a〜12nはデータ情報よりも1クロックサイクル後でパリ
ティ情報を送出する。それ故、パリティ発生時間がCPU
の最小サイクルタイムに影響することはない。
a〜12nはデータ情報よりも1クロックサイクル後でパリ
ティ情報を送出する。それ故、パリティ発生時間がCPU
の最小サイクルタイムに影響することはない。
さて、第4図を参照し、特殊機能ユニットのパリティ発
生機構について説明する。
生機構について説明する。
第4図は、特殊機能ユニット12a〜12nを示しており、そ
れらの入力はSJバス26及びSKバス28に接続されそしてそ
れらの出力はSMバス16に接続されている。これらのバス
に加えて、第4図は、両特殊機能モジュールの入力を駆
動するSJパリティバス26a及びSKパリティバス28aと、特
殊機能ユニット12a〜12nによって選択的に駆動されるSM
パリティバス16aとを示している。全ての特殊機能ユニ
ットの代表として示した特殊機能ユニット12aは、パリ
ティ通過又は発生ユニット202及び特殊機能オペレーシ
ョンユニット200を含むものとして示されており、この
後者のユニットは例えば第2図のALU100又は第3図のス
クラッチパッド120である。含まれる特定の特殊機能ユ
ニットの性質に基づいて、そのユニットに対するパリテ
ィが通過されるか或いは発生される。例えば、特殊機能
ユニットがスクラッチパッドである場合には、スクラッ
チパッドに記憶さるべきデータと共にパリティが単に通
過される。特殊機能オペレーション200がALUの場合に
は、ALUの結果からパリティが発生される。
れらの入力はSJバス26及びSKバス28に接続されそしてそ
れらの出力はSMバス16に接続されている。これらのバス
に加えて、第4図は、両特殊機能モジュールの入力を駆
動するSJパリティバス26a及びSKパリティバス28aと、特
殊機能ユニット12a〜12nによって選択的に駆動されるSM
パリティバス16aとを示している。全ての特殊機能ユニ
ットの代表として示した特殊機能ユニット12aは、パリ
ティ通過又は発生ユニット202及び特殊機能オペレーシ
ョンユニット200を含むものとして示されており、この
後者のユニットは例えば第2図のALU100又は第3図のス
クラッチパッド120である。含まれる特定の特殊機能ユ
ニットの性質に基づいて、そのユニットに対するパリテ
ィが通過されるか或いは発生される。例えば、特殊機能
ユニットがスクラッチパッドである場合には、スクラッ
チパッドに記憶さるべきデータと共にパリティが単に通
過される。特殊機能オペレーション200がALUの場合に
は、ALUの結果からパリティが発生される。
他の場合、例えば特殊機能ユニットがカウント動作を伴
なう場合には、入力状態及び入力パリティが既知であれ
ば、機能の結果によってどんなパリティになるかを、ア
ルゴリズムを用いて予想することができる。当業技術で
知られているように、入力オペランド及び実行される演
算に基づいてパリティを予想するのに使用されるハード
ウェア機構は多数ある。パリティ通過又は発生ユニット
202もこれら形式のパリティ予想を使用することができ
る。
なう場合には、入力状態及び入力パリティが既知であれ
ば、機能の結果によってどんなパリティになるかを、ア
ルゴリズムを用いて予想することができる。当業技術で
知られているように、入力オペランド及び実行される演
算に基づいてパリティを予想するのに使用されるハード
ウェア機構は多数ある。パリティ通過又は発生ユニット
202もこれら形式のパリティ予想を使用することができ
る。
パリティ通過又は発生ユニット202によって発生された
ポリティビットは、その発生後の最初の有効クロックの
際にSMパリティバス遅延レジスタユニット204に入れら
れる。
ポリティビットは、その発生後の最初の有効クロックの
際にSMパリティバス遅延レジスタユニット204に入れら
れる。
前記したように特定の特殊機能ユニット12a〜12nを作動
可能にするのに使用されるマイクロコードフィールド11
2は、デコードユニット206を駆動するものとして示され
ている。このデコードユニット206は第2図及び第3図
のデコードユニット110及び122と機能的に同様である
が、ここではパリティに関連した別の機能を有するもの
として示してある。デコードユニット206の出力の1部
は、バッファ208を経てSMバス出力機能を実行するもの
として示されており、バッファ208は当業技術で良く知
られた作動不能化機能を有するものとして概略的に示さ
れている。デコードユニット206の出力は、SMパリティ
駆動遅延レジスタ210へもデータ入力を供給する。SMパ
リティ駆動遅延レジスタ210の出力は、出力バッファ212
の作動可能化/不能化ラインを駆動し、このバッファは
SMパリティバス遅延レジスタの結果をSMパリティバス16
aに与える。
可能にするのに使用されるマイクロコードフィールド11
2は、デコードユニット206を駆動するものとして示され
ている。このデコードユニット206は第2図及び第3図
のデコードユニット110及び122と機能的に同様である
が、ここではパリティに関連した別の機能を有するもの
として示してある。デコードユニット206の出力の1部
は、バッファ208を経てSMバス出力機能を実行するもの
として示されており、バッファ208は当業技術で良く知
られた作動不能化機能を有するものとして概略的に示さ
れている。デコードユニット206の出力は、SMパリティ
駆動遅延レジスタ210へもデータ入力を供給する。SMパ
リティ駆動遅延レジスタ210の出力は、出力バッファ212
の作動可能化/不能化ラインを駆動し、このバッファは
SMパリティバス遅延レジスタの結果をSMパリティバス16
aに与える。
ボックス200で示された特殊機能オペレーションの結果
は、レジスタ204及び210によってクロック遅延が生じる
ためにパリティビットがSMパリティバス16aに得られる
ようになる1クロックサイクル前に、バッファ208を経
てSMバス16に通されることが当業者に理解されよう、然
し乍ら、これを補償するために、パリティバス16aがパ
リティチェック装置216を駆動する。SMレジスタ214の出
力は、SMパリティバス16aからの登録されないパリティ
ビットと同様にパリティチェック装置216へ与えられ
る。SMパリティバス16aのパリティビットは1クロック
サイクル遅延されているので、SMレジスタ214をパリテ
ィデータバスに追加することにより、SMバス16のデータ
出力がこの1クロックサイクルだけ遅延され、従ってパ
リティチェックユニット216はデータ及びパリティビッ
トを同時に受け取る。
は、レジスタ204及び210によってクロック遅延が生じる
ためにパリティビットがSMパリティバス16aに得られる
ようになる1クロックサイクル前に、バッファ208を経
てSMバス16に通されることが当業者に理解されよう、然
し乍ら、これを補償するために、パリティバス16aがパ
リティチェック装置216を駆動する。SMレジスタ214の出
力は、SMパリティバス16aからの登録されないパリティ
ビットと同様にパリティチェック装置216へ与えられ
る。SMパリティバス16aのパリティビットは1クロック
サイクル遅延されているので、SMレジスタ214をパリテ
ィデータバスに追加することにより、SMバス16のデータ
出力がこの1クロックサイクルだけ遅延され、従ってパ
リティチェックユニット216はデータ及びパリティビッ
トを同時に受け取る。
本明細書では、1ワード当たり1つのビットとしてパリ
ティの考え方を一般的に説明したが、その他の機構も使
用できることが当業者に明らかであろう。例えば、全ワ
ードの種々のサブフィールドをカバーするように多数の
パリティビットを使用してもよい。1ワードの半分(上
位又は下位)を各々カバーする2つのパリティビットを
使用してもよい。
ティの考え方を一般的に説明したが、その他の機構も使
用できることが当業者に明らかであろう。例えば、全ワ
ードの種々のサブフィールドをカバーするように多数の
パリティビットを使用してもよい。1ワードの半分(上
位又は下位)を各々カバーする2つのパリティビットを
使用してもよい。
さて、第5図には、特殊機能モジュールの条件テストハ
ードウェアがブロック図で示されており、CPUシーケン
サを多数のテスト条件に基づいて分岐させるハードウェ
アアーキテクチャについて説明する。
ードウェアがブロック図で示されており、CPUシーケン
サを多数のテスト条件に基づいて分岐させるハードウェ
アアーキテクチャについて説明する。
特殊機能モジュールユニット12a〜12nの各々の中には、
前記したように、これらの処理対象となるパラメータに
基づいて種々のテストを実行することのできる色々な特
殊機能ユニットが配置される。例えば、特殊機能ユニッ
トがALUである場合には、実行できる種々のテストは、
桁上げビットの設定、ALU=0、ALUの結果が肯定である
か否定であるかを含む。
前記したように、これらの処理対象となるパラメータに
基づいて種々のテストを実行することのできる色々な特
殊機能ユニットが配置される。例えば、特殊機能ユニッ
トがALUである場合には、実行できる種々のテストは、
桁上げビットの設定、ALU=0、ALUの結果が肯定である
か否定であるかを含む。
各々の特殊機能ユニット12には、2つのマルチプレクサ
130及び132が各々設けられており、これらは、第2図、
第3図及び第4図について既に述べたマイクロコードフ
ィールド114の1部によってそのモジュールに得られる
多数のテスト条件の中から選択を行なう。2つの特定の
テストの選択は若干任意に行なわれ、これより多数又は
少数のテストを選ぶことができ、従ってマルチプレクサ
130及び132のようなマルチプレクサの数を変えられるこ
とが当業者に容易に理解されよう。マルチプレクサ130
及び132の出力、各々、バッファ138及び140を介して2
つのバス、即ち、STESTAバス134及びSTESTBバス136に送
られる。第2図ないし第4図に示されたものと同様に、
バッファ138及び140の出力は、それに関連した特殊機能
ユニット12がSMバス、STESTAライン134A又はSTESTBライ
ン136を駆動しない時に作動不能にされる。バッファ138
及び140の作動不能化入力は、これらの特殊機能ユニッ
トについて前記したようにマイクロコードビットフィー
ルド112をデコードするデコード回路110によって駆動さ
れる。
130及び132が各々設けられており、これらは、第2図、
第3図及び第4図について既に述べたマイクロコードフ
ィールド114の1部によってそのモジュールに得られる
多数のテスト条件の中から選択を行なう。2つの特定の
テストの選択は若干任意に行なわれ、これより多数又は
少数のテストを選ぶことができ、従ってマルチプレクサ
130及び132のようなマルチプレクサの数を変えられるこ
とが当業者に容易に理解されよう。マルチプレクサ130
及び132の出力、各々、バッファ138及び140を介して2
つのバス、即ち、STESTAバス134及びSTESTBバス136に送
られる。第2図ないし第4図に示されたものと同様に、
バッファ138及び140の出力は、それに関連した特殊機能
ユニット12がSMバス、STESTAライン134A又はSTESTBライ
ン136を駆動しない時に作動不能にされる。バッファ138
及び140の作動不能化入力は、これらの特殊機能ユニッ
トについて前記したようにマイクロコードビットフィー
ルド112をデコードするデコード回路110によって駆動さ
れる。
従って、特殊機能ユニットが選択されそしてマイクロコ
ードフィールド114の1部分によって1つのテスト又は
1組のテストが規定された時には、これらテストの結果
がマルチプレクサ130及び132並びにバッファ138及び140
を経てSTESTAライン134及びSTESTBライン136に送出され
る。
ードフィールド114の1部分によって1つのテスト又は
1組のテストが規定された時には、これらテストの結果
がマルチプレクサ130及び132並びにバッファ138及び140
を経てSTESTAライン134及びSTESTBライン136に送出され
る。
STESTAライン134及びSTESTBライン136は、シーケンサの
条件分岐ハードウェアユニット139で終わる。シーケン
サの分岐ハードウェアユニット139の機能は、STESTA及
びSTESTBバスによってこれに送られたテスト結果を用い
て、マイクロ分岐を行なうと共に、幾つかのマイクロ分
岐を行なった時にマイクロコードのラインを選択的に禁
止することである.シーケンサの条件分岐ハードウェア
ユニット139のアーキテクチャ及び機能については、参
考としてここに取り上げる本発明と同じ譲受人に譲渡さ
れた米国特許第4,571,673号明細書に完全に開示されて
いる。
条件分岐ハードウェアユニット139で終わる。シーケン
サの分岐ハードウェアユニット139の機能は、STESTA及
びSTESTBバスによってこれに送られたテスト結果を用い
て、マイクロ分岐を行なうと共に、幾つかのマイクロ分
岐を行なった時にマイクロコードのラインを選択的に禁
止することである.シーケンサの条件分岐ハードウェア
ユニット139のアーキテクチャ及び機能については、参
考としてここに取り上げる本発明と同じ譲受人に譲渡さ
れた米国特許第4,571,673号明細書に完全に開示されて
いる。
ここに示した特定のバスの巾は、その用途に応じて決め
ることができる。ここでは、16ビット+2パリティビッ
トの巾を用いたが、本発明で使用する実際のバスの巾は
単に設計上の選択の問題に過ぎない。
ることができる。ここでは、16ビット+2パリティビッ
トの巾を用いたが、本発明で使用する実際のバスの巾は
単に設計上の選択の問題に過ぎない。
種々のレジスタの個数及びその使い方は、単なる例示に
過ぎず、何らこれらに限定されるものではない。本発明
は、その本来の技術に従属する設計規則が守られるなら
ば、TTL、ECL、CMOS、MOS、NMOS又は他の技術によって
も機能できることが当業者に理解されよう。
過ぎず、何らこれらに限定されるものではない。本発明
は、その本来の技術に従属する設計規則が守られるなら
ば、TTL、ECL、CMOS、MOS、NMOS又は他の技術によって
も機能できることが当業者に理解されよう。
レジスタ、マルチプレクサ、ALU及び特殊機能論理装置
は、別個の論理素子として実施してもよいし、ゲートア
レイ又は特性LSIの一部として実施してもよい。
は、別個の論理素子として実施してもよいし、ゲートア
レイ又は特性LSIの一部として実施してもよい。
発明の効果 本発明によれば、第1データ路に設けられた演算論理手
段と、この演算論理手段と同様にオペランドを処理する
ように第2データ路に設けられて、1つがマイクロ命令
中の第1のマイクロコードフィールドに応答してオペラ
ンドを処理するように選択される、複数の機能手段と、
処理されるべきオペランドを記憶する複数の第1レジス
タ手段と、該第1レジスタ手段に接続され、マイクロ命
令中の第2のマイクロコードフィールドに応答してオペ
ランドの選択されたものを第2マイクロコードフィール
ドによって方向付けされた第1データ路及び第2データ
路に同時に配置する複数の第1マルチプレクサ手段と、
演算論理手段からの結果を第1レジスタ手段の少なくと
も1つに返送する第1の返送バス手段と、機能手段の動
作の結果を第1レジスタ手段の少なくとも1つに返送す
る、第1返送バス手段から分離した第2の返送バス手段
とを備えたので、レジスタのポート数を最少にし且つ入
力ポート数の多い(すなわち幅の広い)マルチプレクサ
の使用を最小限に抑えたマルチデータ路のCPUアーキテ
クチャが提供される。特に、本発明においては、データ
ソースが、従来のような単一のステージと違って、パイ
プライン構成で2つのステージにおいてマルチプレクス
するように構成されているので、レジスタのポート数を
最少にし、入力ポート数の多いマルチプレクサの使用を
最小限に抑えることができた。
段と、この演算論理手段と同様にオペランドを処理する
ように第2データ路に設けられて、1つがマイクロ命令
中の第1のマイクロコードフィールドに応答してオペラ
ンドを処理するように選択される、複数の機能手段と、
処理されるべきオペランドを記憶する複数の第1レジス
タ手段と、該第1レジスタ手段に接続され、マイクロ命
令中の第2のマイクロコードフィールドに応答してオペ
ランドの選択されたものを第2マイクロコードフィール
ドによって方向付けされた第1データ路及び第2データ
路に同時に配置する複数の第1マルチプレクサ手段と、
演算論理手段からの結果を第1レジスタ手段の少なくと
も1つに返送する第1の返送バス手段と、機能手段の動
作の結果を第1レジスタ手段の少なくとも1つに返送す
る、第1返送バス手段から分離した第2の返送バス手段
とを備えたので、レジスタのポート数を最少にし且つ入
力ポート数の多い(すなわち幅の広い)マルチプレクサ
の使用を最小限に抑えたマルチデータ路のCPUアーキテ
クチャが提供される。特に、本発明においては、データ
ソースが、従来のような単一のステージと違って、パイ
プライン構成で2つのステージにおいてマルチプレクス
するように構成されているので、レジスタのポート数を
最少にし、入力ポート数の多いマルチプレクサの使用を
最小限に抑えることができた。
また、本発明によれば、マイクロコードワードの第1の
マイクロコードフィールドによって特定されたオペラン
ドに基づいて演算論理処理を行うように第1データ路に
設けられた演算論理手段と、第2データ路に少なくとも
2つ設けられ、その内の1つがマイクロコードワードの
第2のマイクロコードフィールドによって特定された演
算動作と同時にオペランドでの動作をなすように選択さ
れる選択可能な機能手段と、演算論理手段と機能手段と
により処理可能なようにオペランドをホールドする複数
の第1レジスタ手段と、マイクロコードワードの第3の
マイクロコードフィールドに応答して、第1レジスタ手
段の1つを演算論理手段に、及び第1レジスタ手段の別
の1つを機能手段に選択的に接続する複数の第1選択論
理手段と、演算論理手段の動作の結果を第1レジスタ手
段の少なくとも1つに返送する第1の返送バス手段と、
機能手段の動作の結果を第1レジスタ手段の少なくとも
1つに返送する、第1返送バス手段から分離した第2の
返送バス手段とを備えたので、レジスタのポート数を最
少にし、入力ポート数の多いマルチプレクサの使用を最
小限に抑えることができるという、前記第1の発明の効
果に加えて、1命令サイクル当たり2以上の動作を可能
にするという効果が得られた。特に、この第2発明にお
いては、マイクロコードワードが3つのフィールドに分
割され、演算論理手段が第1マイクロコードフィールド
によって特定されたオペランドに基づいて動作し、機能
手段が第2マイクロコードフィールドによって特定され
た演算動作と同時にオペランドでの動作をなし、更に、
第3のマイクロコードフィールドが、複数の第1選択論
理手段を一定に制御するので、1命令サイクルにおいて
2以上の動作を可能にした。
マイクロコードフィールドによって特定されたオペラン
ドに基づいて演算論理処理を行うように第1データ路に
設けられた演算論理手段と、第2データ路に少なくとも
2つ設けられ、その内の1つがマイクロコードワードの
第2のマイクロコードフィールドによって特定された演
算動作と同時にオペランドでの動作をなすように選択さ
れる選択可能な機能手段と、演算論理手段と機能手段と
により処理可能なようにオペランドをホールドする複数
の第1レジスタ手段と、マイクロコードワードの第3の
マイクロコードフィールドに応答して、第1レジスタ手
段の1つを演算論理手段に、及び第1レジスタ手段の別
の1つを機能手段に選択的に接続する複数の第1選択論
理手段と、演算論理手段の動作の結果を第1レジスタ手
段の少なくとも1つに返送する第1の返送バス手段と、
機能手段の動作の結果を第1レジスタ手段の少なくとも
1つに返送する、第1返送バス手段から分離した第2の
返送バス手段とを備えたので、レジスタのポート数を最
少にし、入力ポート数の多いマルチプレクサの使用を最
小限に抑えることができるという、前記第1の発明の効
果に加えて、1命令サイクル当たり2以上の動作を可能
にするという効果が得られた。特に、この第2発明にお
いては、マイクロコードワードが3つのフィールドに分
割され、演算論理手段が第1マイクロコードフィールド
によって特定されたオペランドに基づいて動作し、機能
手段が第2マイクロコードフィールドによって特定され
た演算動作と同時にオペランドでの動作をなし、更に、
第3のマイクロコードフィールドが、複数の第1選択論
理手段を一定に制御するので、1命令サイクルにおいて
2以上の動作を可能にした。
更に、本発明によれば、中央処理ユニットが、命令に従
って命令サイクルの間にオペランドに基づく動作を行う
ように、演算論理ユニットのデータ路とは別のデータ路
に設けられた複数の選択可能な機能手段を備え、命令の
動作によって該機能手段の1つを選択し且つその機能と
そのオペランドとを定め、機能手段に設けられ、テスト
条件が合致したことを表示するセンス手段と、中央処理
ユニット中のマイクロシーケンサに接続され且つセンス
手段に応答して、テスト条件が合致したことをセンス手
段が表示したときマイクロ分岐動作を行うマイクロ分岐
手段とを備えたので、演算論理ユニットとは別のデータ
路にテスト機能を設けて、テストロジックを最少にする
マルチデータ路CPUが提供される。特に、この第3発明
においては、演算論理ユニットのデータ路とは別のデー
タ路に機能手段が設けられ、この機能手段にテスト条件
が合致したことを表示するセンス手段が設けられたの
で、テスト条件の合致によりマイクロ分岐が生じ、これ
により、テストのためのロジックを最少にし、CPUの種
々の部分をテストするのに必要とするマイクロ分岐を促
進できた。
って命令サイクルの間にオペランドに基づく動作を行う
ように、演算論理ユニットのデータ路とは別のデータ路
に設けられた複数の選択可能な機能手段を備え、命令の
動作によって該機能手段の1つを選択し且つその機能と
そのオペランドとを定め、機能手段に設けられ、テスト
条件が合致したことを表示するセンス手段と、中央処理
ユニット中のマイクロシーケンサに接続され且つセンス
手段に応答して、テスト条件が合致したことをセンス手
段が表示したときマイクロ分岐動作を行うマイクロ分岐
手段とを備えたので、演算論理ユニットとは別のデータ
路にテスト機能を設けて、テストロジックを最少にする
マルチデータ路CPUが提供される。特に、この第3発明
においては、演算論理ユニットのデータ路とは別のデー
タ路に機能手段が設けられ、この機能手段にテスト条件
が合致したことを表示するセンス手段が設けられたの
で、テスト条件の合致によりマイクロ分岐が生じ、これ
により、テストのためのロジックを最少にし、CPUの種
々の部分をテストするのに必要とするマイクロ分岐を促
進できた。
第1図は、本発明のCPUのブロック図、 第2図は、特殊機能ユニットとして実施された補助ALU
のブロック図、 第3図は、特殊機能ユニットとして実施されたスクラッ
チパッドレジスタアレイのブロック図、 第4図は、特殊機能パリティ発生ハードウェアのブロッ
ク図、そして 第5図は、特殊機能モジュールの条件テストハードウェ
アのブロック図である。 10……ALU、12……特殊機能ユニット、16……特殊主バ
ス、18……主バスJ、20……主バスK、22,24……4:1マ
ルチプレクサ、26……特殊バスSJ、28……特殊バスSK、
30,32……4:1マルチプレクサ、34……Jレジスタ、36…
…CDレジスタ、38……Mレジスタ、40……SMレジスタ、
42……Kレジスタ、44……LITレジスタ、46……マルチ
レジスタファイル、48……アドレス可能なキャッシ、50
……マイクロコードビットフィールド、52,54……マル
チプレクサ。
のブロック図、 第3図は、特殊機能ユニットとして実施されたスクラッ
チパッドレジスタアレイのブロック図、 第4図は、特殊機能パリティ発生ハードウェアのブロッ
ク図、そして 第5図は、特殊機能モジュールの条件テストハードウェ
アのブロック図である。 10……ALU、12……特殊機能ユニット、16……特殊主バ
ス、18……主バスJ、20……主バスK、22,24……4:1マ
ルチプレクサ、26……特殊バスSJ、28……特殊バスSK、
30,32……4:1マルチプレクサ、34……Jレジスタ、36…
…CDレジスタ、38……Mレジスタ、40……SMレジスタ、
42……Kレジスタ、44……LITレジスタ、46……マルチ
レジスタファイル、48……アドレス可能なキャッシ、50
……マイクロコードビットフィールド、52,54……マル
チプレクサ。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 シリロー リノ コスタンチノ アメリカ合衆国 カリフオルニア州 94546 カストロ ヴアリー ロレナ プ レイス 20070 (72)発明者 ジヨン マーチン バーン アメリカ合衆国 カリフオルニア州 95030 ロス ガトス ベルビユー ドラ イブ 173
Claims (5)
- 【請求項1】データ処理システムに用いるパイプライン
型中央処理ユニット(CPU)アーキテクチャにおいて、 オペランドに基づいて演算論理処理を行うように第1デ
ータ路に設けられた演算論理手段と、 前記演算論理手段と同時にオペランドを処理するように
第2データ路に設けられた複数の選択可能な機能手段で
あって、該機能手段の1つが、マイクロ命令中の第1の
マイクロコードフィールドに応答して選択される、機能
手段と、 処理されるべきオペランドを記憶する複数の第1レジス
タ手段と、 該第1レジスタ手段に接続され、前記マイクロ命令中の
第2のマイクロコードフィールドに応答して前記オペラ
ンドの選択されたものを、前記第のマイクロコードフィ
ールドによって方向付けされた前記第1データ路及び前
記第2データ路に同時に配置する複数の第1マルチプレ
クサ手段と、 前記演算論理手段からの結果を前記第1レジスタ手段の
少なくとも1つに返送する第1の返送バス手段と、 前記機能手段の動作の結果を前記第1レジスタ手段の少
なくとも1つに返送するための、前記第1返送バス手段
から分離している第2の返送バス手段と を備えたことを特徴とするCPUアーキテクチャ。 - 【請求項2】パリティをチェックするパリティチェック
手段と、前記オペランドとパリティデータとを同期させ
て該オペランドとパリティデータとを1つのクロック期
間の間に前記パリティチェック手段に到達させる手段と
を備えたことを特徴とする特許請求の範囲第1項記載の
CPUアーキテクチャ。 - 【請求項3】1命令により複数のオペランドが1マイク
ロコードワードの実行の間に処理されるデータ処理シス
テムに用いるパイプライン型中央処理ユニット(CPU)
アーキテクチャにおいて、 前記マイクロコードワードの第1のマイクロコードフィ
ールドによって特定されたオペランドに基づいて演算論
理処理を行うように第1データ路に設けられた演算論理
手段と、 第2データ路に設けられた少なくとも2つの選択可能な
機能手段であって、該機能手段の1つが、前記マイクロ
コードワードの第2のマイクロコードフィールドによっ
て特定された前記演算動作と同時にオペランドでの動作
をなすように選択される、選択可能な機能手段と、 前記演算論理手段と前記機能手段とにより処理可能なよ
うにオペランドをホールドする複数の第1レジスタ手段
と、 前記マイクロコードワードの第3のマイクロコードフィ
ールドに応答して、前記第1レジスタ手段の1つを前記
演算論理手段に、及び前記第1レジスタ手段の別の1つ
を前記機能手段に選択的に接続する複数の第1選択論理
手段と、 前記演算論理手段の動作の結果を前記第1レジスタ手段
の少なくとも1つに返送する第1の返送バス手段と、 前記機能手段の動作の結果を前記第1レジスタ手段の少
なくとも1つに返送するための、前記第1返送バス手段
から分離している第2の返送バス手段と を備えたことを特徴とするCPUアーキテクチャ。 - 【請求項4】前記少なくとも1つの選択可能な機能手段
に設けられ、前記マイクロコードワードのテスト選択マ
イクロコードフィールドによって選択された複数の条件
の1つが合致したどうかを表示するセンス手段と、CPU
のマイクロシーケンサに接続され且つ前記センス手段に
応答して、前記選択したテスト条件が合致したことを前
記センス手段が表示したときマイクロ分岐動作を行うマ
イクロ分岐手段とを具備したことを特徴とする特許請求
の範囲第3項記載のCPUアーキテクチャ。 - 【請求項5】1命令により複数のオペランドが1命令サ
イクルの間に処理されるデータ処理システムであって、
データ路に設けられた演算論理ユニットを有するデータ
処理システムの中央処理ユニットにおいて、 前記命令に従って命令サイクルの間に前記オペランドに
基づく動作を行うように、前記演算論理ユニットのデー
タ路とは別のデータ路に設けられた複数の選択可能な機
能手段を備え、前記命令の動作によって該機能手段の1
つを選択し且つその機能とそのオペランドとを定めてお
り、更に、 前記機能手段に設けられ、テスト条件が合致したことを
表示するセンス手段と、 中央処理ユニット中のマイクロシーケンサに接続され且
つ前記センス手段に応答して、前記テスト条件が合致し
たことを前記センス手段が表示したときマイクロ分岐動
作を行うマイクロ分岐手段と を備えたことを特徴とする中央処理ユニット。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US06/537,877 US4800486A (en) | 1983-09-29 | 1983-09-29 | Multiple data patch CPU architecture |
US537877 | 1983-09-29 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPS60167028A JPS60167028A (ja) | 1985-08-30 |
JPH0752386B2 true JPH0752386B2 (ja) | 1995-06-05 |
Family
ID=24144474
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP59203894A Expired - Lifetime JPH0752386B2 (ja) | 1983-09-29 | 1984-09-28 | マルチデ−タ路のcpuア−キテクチヤ |
Country Status (19)
Country | Link |
---|---|
US (1) | US4800486A (ja) |
EP (1) | EP0136179B1 (ja) |
JP (1) | JPH0752386B2 (ja) |
KR (1) | KR920004059B1 (ja) |
AT (1) | ATE58794T1 (ja) |
AU (1) | AU574387B2 (ja) |
BR (1) | BR8404918A (ja) |
CA (1) | CA1215783A (ja) |
DE (1) | DE3483669D1 (ja) |
DK (1) | DK165202C (ja) |
FI (1) | FI85428C (ja) |
HK (1) | HK46191A (ja) |
IE (1) | IE56554B1 (ja) |
IL (1) | IL73106A (ja) |
IN (1) | IN162545B (ja) |
MX (1) | MX157907A (ja) |
NO (1) | NO168497C (ja) |
NZ (1) | NZ209663A (ja) |
ZA (1) | ZA847524B (ja) |
Families Citing this family (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB8401807D0 (en) * | 1984-01-24 | 1984-02-29 | Int Computers Ltd | Pipelined data processing apparatus |
US4891754A (en) * | 1987-07-02 | 1990-01-02 | General Datacomm Inc. | Microinstruction sequencer for instructing arithmetic, logical and data move operations in a conditional manner |
US5032986A (en) * | 1987-07-28 | 1991-07-16 | Texas Instruments Incorporated | Data processing device with parallel circular addressing hardware |
JPH01255031A (ja) * | 1988-04-05 | 1989-10-11 | Matsushita Electric Ind Co Ltd | 演算処理装置 |
US5109497A (en) * | 1989-01-27 | 1992-04-28 | Hughes Aircraft Company | Arithmetic element controller for controlling data, control and micro store memories |
US5961629A (en) * | 1991-07-08 | 1999-10-05 | Seiko Epson Corporation | High performance, superscalar-based computer system with out-of-order instruction execution |
US5539911A (en) * | 1991-07-08 | 1996-07-23 | Seiko Epson Corporation | High-performance, superscalar-based computer system with out-of-order instruction execution |
EP0547240B1 (en) * | 1991-07-08 | 2000-01-12 | Seiko Epson Corporation | Risc microprocessor architecture implementing fast trap and exception state |
EP1526446A3 (en) | 1991-07-08 | 2007-04-04 | Seiko Epson Corporation | Extensible RISC microprocessor architecture |
US5438668A (en) | 1992-03-31 | 1995-08-01 | Seiko Epson Corporation | System and method for extraction, alignment and decoding of CISC instructions into a nano-instruction bucket for execution by a RISC computer |
US6735685B1 (en) | 1992-09-29 | 2004-05-11 | Seiko Epson Corporation | System and method for handling load and/or store operations in a superscalar microprocessor |
KR100248903B1 (ko) | 1992-09-29 | 2000-03-15 | 야스카와 히데아키 | 수퍼스칼라마이크로프로세서에서의 적재 및 저장연산처리방법 및 시스템 |
US5648733A (en) * | 1995-11-01 | 1997-07-15 | Lsi Logic Corporation | Scan compatible 3-state bus control |
US8006221B2 (en) * | 2007-09-11 | 2011-08-23 | International Business Machines Corporation | System and method for testing multiple processor modes for processor design verification and validation |
US7669083B2 (en) * | 2007-09-11 | 2010-02-23 | International Business Machines Corporation | System and method for re-shuffling test case instruction orders for processor design verification and validation |
US8019566B2 (en) * | 2007-09-11 | 2011-09-13 | International Business Machines Corporation | System and method for efficiently testing cache congruence classes during processor design verification and validation |
US20090070570A1 (en) * | 2007-09-11 | 2009-03-12 | Shubhodeep Roy Choudhury | System and Method for Efficiently Handling Interrupts |
US8099559B2 (en) * | 2007-09-11 | 2012-01-17 | International Business Machines Corporation | System and method for generating fast instruction and data interrupts for processor design verification and validation |
US7992059B2 (en) | 2007-09-11 | 2011-08-02 | International Business Machines Corporation | System and method for testing a large memory area during processor design verification and validation |
US7966521B2 (en) * | 2008-07-14 | 2011-06-21 | International Business Machines Corporation | Light weight and high throughput test case generation methodology for testing cache/TLB intervention and diagnostics |
US9153295B2 (en) * | 2012-10-04 | 2015-10-06 | Texas Instruments Incorporated | Register bank cross path connection method in a multi core processor system |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS513743A (ja) * | 1974-06-28 | 1976-01-13 | Hitachi Ltd | |
JPS59173850A (ja) * | 1983-03-14 | 1984-10-02 | インタ−ナショナル ビジネス マシ−ンズ コ−ポレ−ション | パイプライン式プロセツサ |
Family Cites Families (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB1426749A (en) * | 1973-06-05 | 1976-03-03 | Burroughs Corp | Micro programme data processor having parallel instruction flow streams for plural level of subinstruction sets |
US3900723A (en) * | 1974-05-28 | 1975-08-19 | Control Data Corp | Apparatus for controlling computer pipelines for arithmetic operations on vectors |
US4041461A (en) * | 1975-07-25 | 1977-08-09 | International Business Machines Corporation | Signal analyzer system |
GB1506972A (en) * | 1976-02-06 | 1978-04-12 | Int Computers Ltd | Data processing systems |
IT1059493B (it) * | 1976-04-22 | 1982-05-31 | Olivetti & Co Spa | Dispositivo per cambiare l ambiente di lavoro di un calcolatore |
US4128880A (en) * | 1976-06-30 | 1978-12-05 | Cray Research, Inc. | Computer vector register processing |
US4179734A (en) * | 1976-07-02 | 1979-12-18 | Floating Point Systems, Inc. | Floating point data processor having fast access memory means |
US4075704A (en) * | 1976-07-02 | 1978-02-21 | Floating Point Systems, Inc. | Floating point data processor for high speech operation |
GB1527289A (en) * | 1976-08-17 | 1978-10-04 | Int Computers Ltd | Data processing systems |
JPS5847042B2 (ja) * | 1977-03-08 | 1983-10-20 | 株式会社日立製作所 | 異常検知方法 |
US4101960A (en) * | 1977-03-29 | 1978-07-18 | Burroughs Corporation | Scientific processor |
FR2413712A1 (fr) * | 1977-12-30 | 1979-07-27 | Ibm France | Microprocesseur specialise pour le calcul de la somme de produits de deux operandes complexes |
JPS6024985B2 (ja) * | 1978-08-31 | 1985-06-15 | 富士通株式会社 | デ−タ処理方式 |
US4251885A (en) * | 1979-03-09 | 1981-02-17 | International Business Machines Corporation | Checking programmed controller operation |
US4253183A (en) * | 1979-05-02 | 1981-02-24 | Ncr Corporation | Method and apparatus for diagnosing faults in a processor having a pipeline architecture |
US4298935A (en) * | 1979-10-05 | 1981-11-03 | Honeywell Information Systems Inc. | Interface circuit for coupling an automated maintenance system to a CPU |
US4315313A (en) * | 1979-12-27 | 1982-02-09 | Ncr Corporation | Diagnostic circuitry in a data processor |
US4392200A (en) * | 1980-01-28 | 1983-07-05 | Digital Equipment Corporation | Cached multiprocessor system with pipeline timing |
CA1174370A (en) * | 1980-05-19 | 1984-09-11 | Hidekazu Matsumoto | Data processing unit with pipelined operands |
US4376976A (en) * | 1980-07-31 | 1983-03-15 | Sperry Corporation | Overlapped macro instruction control system |
KR860001434B1 (ko) * | 1980-11-21 | 1986-09-24 | 후지쑤 가부시끼가이샤 | 데이타 처리시 스템 |
US4414669A (en) * | 1981-07-23 | 1983-11-08 | General Electric Company | Self-testing pipeline processors |
JPS58114274A (ja) * | 1981-12-28 | 1983-07-07 | Hitachi Ltd | デ−タ処理装置 |
JPS59111569A (ja) * | 1982-12-17 | 1984-06-27 | Hitachi Ltd | ベクトル処理装置 |
US4618956A (en) * | 1983-09-29 | 1986-10-21 | Tandem Computers Incorporated | Method of operating enhanced alu test hardware |
US4574344A (en) * | 1983-09-29 | 1986-03-04 | Tandem Computers Incorporated | Entry control store for enhanced CPU pipeline performance |
-
1983
- 1983-09-29 US US06/537,877 patent/US4800486A/en not_active Expired - Lifetime
-
1984
- 1984-09-24 NZ NZ209663A patent/NZ209663A/xx unknown
- 1984-09-25 ZA ZA847524A patent/ZA847524B/xx unknown
- 1984-09-26 FI FI843781A patent/FI85428C/fi not_active IP Right Cessation
- 1984-09-26 IL IL73106A patent/IL73106A/xx not_active IP Right Cessation
- 1984-09-27 AU AU33596/84A patent/AU574387B2/en not_active Ceased
- 1984-09-27 DK DK462584A patent/DK165202C/da not_active IP Right Cessation
- 1984-09-27 AT AT84306591T patent/ATE58794T1/de not_active IP Right Cessation
- 1984-09-27 DE DE8484306591T patent/DE3483669D1/de not_active Expired - Lifetime
- 1984-09-27 EP EP84306591A patent/EP0136179B1/en not_active Expired - Lifetime
- 1984-09-27 IN IN694/CAL/84A patent/IN162545B/en unknown
- 1984-09-27 IE IE2461/84A patent/IE56554B1/en not_active IP Right Cessation
- 1984-09-28 MX MX202897A patent/MX157907A/es unknown
- 1984-09-28 JP JP59203894A patent/JPH0752386B2/ja not_active Expired - Lifetime
- 1984-09-28 BR BR8404918A patent/BR8404918A/pt not_active IP Right Cessation
- 1984-09-28 KR KR1019840005995A patent/KR920004059B1/ko not_active IP Right Cessation
- 1984-09-28 NO NO843891A patent/NO168497C/no unknown
- 1984-09-28 CA CA000464281A patent/CA1215783A/en not_active Expired
-
1991
- 1991-06-11 HK HK461/91A patent/HK46191A/xx not_active IP Right Cessation
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS513743A (ja) * | 1974-06-28 | 1976-01-13 | Hitachi Ltd | |
JPS59173850A (ja) * | 1983-03-14 | 1984-10-02 | インタ−ナショナル ビジネス マシ−ンズ コ−ポレ−ション | パイプライン式プロセツサ |
Also Published As
Publication number | Publication date |
---|---|
DE3483669D1 (de) | 1991-01-10 |
ZA847524B (en) | 1985-06-26 |
DK165202C (da) | 1993-03-15 |
ATE58794T1 (de) | 1990-12-15 |
NO168497C (no) | 1992-02-26 |
FI843781L (fi) | 1985-03-30 |
FI85428C (fi) | 1992-04-10 |
FI843781A0 (fi) | 1984-09-26 |
DK462584A (da) | 1985-03-30 |
IN162545B (ja) | 1988-06-11 |
AU574387B2 (en) | 1988-07-07 |
AU3359684A (en) | 1985-04-04 |
IE56554B1 (en) | 1991-09-11 |
NO168497B (no) | 1991-11-18 |
IE842461L (en) | 1985-03-29 |
KR920004059B1 (ko) | 1992-05-23 |
CA1215783A (en) | 1986-12-23 |
NO843891L (no) | 1985-04-01 |
IL73106A (en) | 1988-04-29 |
NZ209663A (en) | 1989-01-06 |
FI85428B (fi) | 1991-12-31 |
EP0136179B1 (en) | 1990-11-28 |
MX157907A (es) | 1988-12-20 |
KR850002906A (ko) | 1985-05-20 |
DK165202B (da) | 1992-10-19 |
JPS60167028A (ja) | 1985-08-30 |
HK46191A (en) | 1991-06-21 |
DK462584D0 (da) | 1984-09-27 |
EP0136179A3 (en) | 1986-12-30 |
EP0136179A2 (en) | 1985-04-03 |
IL73106A0 (en) | 1984-12-31 |
US4800486A (en) | 1989-01-24 |
BR8404918A (pt) | 1985-08-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPH0752386B2 (ja) | マルチデ−タ路のcpuア−キテクチヤ | |
US5819065A (en) | System and method for emulating memory | |
EP0474297B1 (en) | Very long instruction word machine for efficient execution of programs with conditional branches | |
US4937770A (en) | Simulation system | |
US5313551A (en) | Multiport memory bypass under software control | |
US6581152B2 (en) | Methods and apparatus for instruction addressing in indirect VLIW processors | |
US7281119B1 (en) | Selective vertical and horizontal dependency resolution via split-bit propagation in a mixed-architecture system having superscalar and VLIW modes | |
US4541045A (en) | Microprocessor architecture employing efficient operand and instruction addressing | |
JPH04299436A (ja) | メモリ回路および機能ユニットのグループを備えた処理装置 | |
US4574344A (en) | Entry control store for enhanced CPU pipeline performance | |
JP5146451B2 (ja) | ハードウエアエミュレーションシステムのプロセッサを同期化する方法及び装置 | |
US4085450A (en) | Performance invarient execution unit for non-communicative instructions | |
US6594753B2 (en) | Method and apparatus for dual issue of program instructions to symmetric multifunctional execution units | |
US4689765A (en) | Groups of tag signals for data store in multi-plane set of buffers | |
US7606698B1 (en) | Method and apparatus for sharing data between discrete clusters of processors | |
US6904510B1 (en) | Data processor having a respective multiplexer for each particular field | |
CA2304609A1 (en) | Autonomously cycling data processing architecture | |
US5034879A (en) | Programmable data path width in a programmable unit having plural levels of subinstruction sets | |
US7111152B1 (en) | Computer system that operates in VLIW and superscalar modes and has selectable dependency control | |
US4975837A (en) | Programmable unit having plural levels of subinstruction sets where a portion of the lower level is embedded in the code stream of the upper level of the subinstruction sets | |
KR20080049727A (ko) | 별도의 직렬 모듈을 지닌 프로세서 어레이 | |
KR100278136B1 (ko) | 데이타처리장치 및 데이타처리방법 | |
JP2638613B2 (ja) | プログラマブル アクセラレータ及びその方法 | |
US5729729A (en) | System for fast trap generation by creation of possible trap masks from early trap indicators and selecting one mask using late trap indicators | |
JPH0814791B2 (ja) | 処理システム |
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 |